を使用して空間モデルを実行していspatstat
ます。モデルのフィッティングに続いて、いくつかの距離で予測を比較し、それらが互いに有意に異なるかどうかを述べたいと思います。データセットに基づいて、0, 0 原点の周りにたくさんのポイントがあります。各ポイントには、x、y 座標、原点からの距離、方位角 (北 / 東 / 西 / 南) があります。
この質問への回答からのセットアップに従ってください:
library(spatstat)
library(ggplot2)
# making up some data
set.seed(42)
X <- runifdisc(2000)
plot(X)
W <- Window(X)
rad <- as.im(function(x,y){sqrt(x^2+y^2)}, W)
ang <- as.im(atan2, W)
plot(solist(rad, ang), main = "")
# assigning directions
north <- ang < 45/180*pi & ang > -45/180*pi
east <- ang > 45/180*pi & ang < 135/180*pi
west <- ang < -45/180*pi & ang > -135/180*pi
south <- ang < -135/180*pi | ang > 135/180*pi
# create and run a model
lam <- 2000*exp(-2*rad - rad*north - 3*rad*west)
set.seed(42)
X2 <- rpoispp(lam)[W]
mod2 <- ppm(X2 ~ rad*west + rad*south +rad*east)
plot(predict(mod2))
plot(X2, add = TRUE, col = rgb(.9,.9,.9,.5))
北と西の点をグリッドで予測します。
preds1 <- data.frame(Angle = "North", x = 0, y = seq(0.1, 1, 0.1))
preds2 <- data.frame(Angle = "West", y = 0, x = seq(-1, -0.1, 0.1))
preds <- rbind(preds1, preds2)
preds$Pred <- predict(mod2, locations = preds)
temp <- predict(mod2, locations = preds, interval = "confidence")
preds$Lower <- temp[1:nrow(preds)]
preds$Upper <- temp[(nrow(preds) + 1) : length(temp)]
preds$Distance <- ifelse(preds$x == 0, abs(preds$y), abs(preds$x))
ggplot(preds) +
geom_ribbon(aes(x = Distance, ymin = Lower, ymax = Upper, group = Angle), alpha = 0.1) +
geom_line(aes(x = Distance, y = Pred, colour = Angle), size = 0.75)
次のステップとして、距離 x、y、z では北と西の値が大きく異なるが、a、b、c では大きく異なると言いたいのですが...どうすればそこにたどり着けますか?