R: L関数 [統計]
こんどはL関数を計算させてみる。
finpinesをつかう。
まずはK関数。
Monte Carloで95%信頼区間をもとめる。
finpinesをつかう。
library(spatstat) data(finpines) plot(finpines)
まずはK関数。
# K function K <- Kest(finpines, correction = "border") plot(K)
# L function L <- Lest(finpines, correction = "border") plot(L)
Monte Carloで95%信頼区間をもとめる。
# Monte Carlo library(boot) L.fun <- function(data, correction = "border") { x.min <- min(data$window$xrange) x.max <- max(data$window$xrange) y.min <- min(data$window$yrange) y.max <- max(data$window$yrange) n <- data$n x <- runif(n, x.min, x.max) y <- runif(n, y.min, y.max) p <- ppp(x, y, window = data$window) Lest(p, correction)$border } n <- 2000 L.p <- boot(finpines, L.fun, R = n, sim = "parametric") m <- length(L.p$t[1, ]) q <- sapply(1:m, function(i) quantile(L.p$t[, i], probs = c(0.025, 0.975))) plot(L) lines(L$r, q[1, ], lty = 3) lines(L$r, q[2, ], lty = 3)
タグ:R
こんばんは
森林生態学を学んでいる学生です。
ブログを見て勉強させていただいております。
樹木の水平分布を調べるため、L関数を使おうとしているのですが、x,y座標を渡す際に、data contain duplicated points
というエラーが出てしまいます。
spatstatを使っていますが、
重複した座標をもつ個体がいるとプロットできないのでしょうか?
5年も前の記事にコメントしてしまい申し訳ありません。
もし何かご存知でしたら教えていただけないでしょうか。
by Thoma (2017-11-16 20:54)
はい。座標が重複しているとだめだったと思います。
by hiroki (2017-11-17 05:22)
hiroki様
重複はダメなのですね。
参考になりました。ありがとうございます。
by Thoma (2017-11-17 15:16)