spatstat 中的 Relrisk 函数和带宽选择

Relrisk function and bandwidth selection in spatstat

我无法解释从 relrisk 获得的结果。我的数据是一个包含两个标记的多点过程(两个啮齿动物物种 AA 和 RE),我想知道它们是否在空间上被隔离。

> summary(REkm)
Marked planar point pattern:  46 points
Average intensity 0.08101444 points per square unit

*Pattern contains duplicated points*

Coordinates are given to 3 decimal places
i.e. rounded to the nearest multiple of 0.001 units

Multitype:
frequency proportion  intensity
AA        15   0.326087 0.02641775
RE        31   0.673913 0.05459669

Window: rectangle = [4, 38] x [0.3, 17] units
x 16.7 units)
Window area = 567.8 square units

relkm <- relrisk(REkm)
plot(relkm, main="Relrisk default")

这个 relrisk 估计的带宽默认是自动选择的(bw.relrisk),但是当我使用 sigma= 0.5 或 1 尝试其他数字时,结果有点奇怪。 这是怎么发生的?是因为我的ppp空白space比例过大吗?

根据 Spatial Point Patterns books and 的第 14 章,我假设 relrisk 的默认值将显示强度比率(案例除以对照,在我的例子中:RE 除以 AA),但是如果我设置 casecontrol=FALSE,我可以获得每种类型的空间变化概率。 那为什么Casecontrol=False中RE类型的图片默认看起来和relrisk估计的一模一样呢?或者他们都估计每个站点的 p(RE)=λRE/ λRE+λAA?

任何帮助将不胜感激!非常感谢!

这是两个问题。

  1. 为什么 RE 的图像在 casecontrol=FALSE 看起来与 relrisk 的默认输出相同?

有关 spatstat 函数的权威信息来源是帮助文件中的联机文档。 relrisk.ppp 的帮助文件提供了此函数行为的完整详细信息。它说概率和风险的计算是由参数relative控制的。如果 relative=FALSE(默认值),代码会计算每种类型的空间变化概率。如果 relative=TRUE 它计算每种类型的相对风险 i,定义为类型 i 的概率与类型 c 的概率之比,其中 c是指定为控件的类型。如果你想要相对风险那么你应该设置 relative=TRUE.

  1. 与自动 selected 带宽相比,设置 sigma=0.5 时获得的结果截然不同。

您的示例输出表明 window 是 34 x 17 个单位。 sigma=0.5 的平滑带宽对于该区域来说非常小。想象一下,每个数据点都被一个半径为 0.5 的模糊圆所取代;会有很多空 space。平滑过程遇到了导致古怪伪影的数值问题。

您可以尝试 sigma 的不同值范围,比如从 1 到 15,然后决定哪个值产生最令人满意的结果。

relrisk(REkm, casecontrol=FALSE) 的情节表明自动带宽 select 或 bw.relriskppp 选择了一个更大的 sigma 值,可能约为 10。您可以通过以下方式调查

b <- bw.relriskppp(REkm)
print(b)
plot(b)

打印命令将打印默认计算中使用的 sigma 的选定值。 plot 命令将显示已最大化到 select 带宽的 cross-validation 标准。这让您了解根据自动 selector.

可接受的 sigma 值的范围

阅读 bw.relriskppp 的帮助文件,了解可用于带宽 selection 方法的不同选项。从您的角度来看,也许不同的方法选择会给您带来更可接受的结果。