sp - Ripleys K 绘图不正确?
问题描述
我正在使用包 spatstat 进行点模式分析,并在我的点上运行 Ripley 的 K (spatstat::Kest) 以查看是否有任何聚类。但是,似乎并非所有应出现在图表 (kFem) 中的线都已绘制。例如,红线 (Ktrans) 在 x=12 附近停止,而绿线 (Kbord) 根本不出现。对于如何解释这一点以及是否可能存在错误,我将不胜感激。
这是我的学习窗口。这是一个不规则的形状,因为我正在分析沿样带线的点模式。
这是我的点模式的密度图:
解决方案
不太可能(但并非不可能)有一个简单的错误Kest
导致此问题,因为此特定功能已被许多用户密集测试。您更有可能有一个不规则的观察窗口,并且有一个数学原因导致无法在所有距离处计算各种估计值。请添加您的点模式的绘图/摘要,以便我们了解观察窗口(或者更好地访问观察窗口)。
此外,要手动检查 K 函数的估计值,您可以将函数值 ( fv
) 对象转换为 adata.frame
并打印它:
dat <- as.data.frame(kFem)
head(dat, n = 10)
更新:
您的窗口确实非常不规则,并且解释了为什么它没有在远距离产生一些修正。我猜你的样带只有几米宽,你正在考虑的距离可达 50m。边界校正只能针对不超过样带一半宽度的距离进行计算。
使用Kest
意味着您相信您的样带是一个大同质点过程的一个子集(在任何地方都具有相同的强度,并且在整个空间中具有相同的相关结构)。如果这是真的,那么Kest
提供对未知真正齐次 K 函数的合理估计。但是,您提供了一个图,其中您将区域划分为高、中和低强度的部分,这与同质性假设不符。与理论泊松线的偏差可能只是由于强度不均匀而不是点之间的实际相关性。您可能应该只考虑远小于 50 的距离(您可以rmax
在调用时设置Kest
)。
推荐阅读
- python-3.x - 十进制模块 - decimal.InvalidOperation: [
] 当 n = 浮动 - r - 从列名中提取日期以创建时间序列
- javascript - 使用 JavaScript 函数将数据从 html 表单发布到 ac# 控制器方法时的空值
- python - python 使用递归:为什么一种变通方法有效而另一种失败?
- io - 用逗号保存文件时在 julia 中使用 JLD2 加载文件
- python - 如何解析列中包含字典行的数据框
- javascript - 在浏览器中显示 .hdr Uint8Array 图像
- mongodb - 通过 ID 查询文档比通过 MongoDB 中的嵌入式文档查询更快
- javascript - 如何使用拆分将短语作为一个元素添加到数组中?
- c# - 为什么 Windows.UI.Composition AnimationController.Progress 总是返回零?