Arguments 信封功能(spatstat)-错误“;“未使用的参数”;

Arguments 信封功能(spatstat)-错误“;“未使用的参数”;,arguments,envelope,spatstat,Arguments,Envelope,Spatstat,我想请您帮助我找到为什么在使用函数信封时,我的参数不被接受,而是被定义为“未使用的参数”的原因。 我使用的数据是没有标记的ppp,我想用模拟数据和我的数据创建一个L函数图。 以下是我的ppp数据的代码: map2008MLW = ppp(xy2008_BNGppp$x, xy2008_BNGppp$y, window = IoM_polygon_MLWowin) 然后: L2008 = Lest(map2008MLW,correction="Ripley") OP = par(mar=c(5

我想请您帮助我找到为什么在使用函数信封时,我的参数不被接受,而是被定义为“未使用的参数”的原因。 我使用的数据是没有标记的ppp,我想用模拟数据和我的数据创建一个L函数图。 以下是我的ppp数据的代码:

 map2008MLW = ppp(xy2008_BNGppp$x, xy2008_BNGppp$y, window = IoM_polygon_MLWowin)
然后:

L2008 = Lest(map2008MLW,correction="Ripley")
OP = par(mar=c(5,5,4,4))
plot(L2008, . -r ~ r, ylab=expression(hat("L")), xlab = "d (m)"); par(OP)
L2008$iso  = L$iso  - L$r
L2008$theo = L$theo - L$r
所需的模拟次数

n = 9999
要显示的所需p显著性水平

 p  = 0.05
在这一点上,包络函数似乎不是很高兴:

    EL2008 = envelope(map2008MLW[W], Lest, nsim=n, rank=(p * (n + 1)))
    Error in envelope(map2008MLW[W], Lest, nsim = n, rank = (p * (n + 1))) : 
  unused arguments (nsim = n, rank = (p * (n + 1)))
这似乎是一个一般性错误,我不确定它是由spatstat包引起的。请帮我找到解决办法,因为我无法继续我的分析

多谢各位


Martina

参数
rank
应该是
nrank

在本例中,显著性水平和参数
nrank
之间的关系也不正确。对于双侧检验,显著性水平为
alpha=2*nrank/(nsim+1)
,因此
nrank=alpha*(nsim+1)/2

您选择了显著性水平0.95,但我假设您的意思是0.05。因此,使用
nsim=9999
您希望
nrank=0.05*10000/2=250
获得显著性水平为0.05的测试

此类应用中不需要如此大量的模拟(9999)。蒙特卡罗测试对较小的
nsim
值有效。在您的示例中,我通常使用
nsim=39
nrank=1


参见第10章。

您的示例不可复制。您指的是我们无权访问的数据
xy2008\u bngpp
IoM\u polygon\u MLWowin
。也许你可以生成可重复的人工数据,从而产生同样的错误?或者把数据上传到某个地方。您还可以参考
L
W
,它们是未定义的对象。您能再装一个同样有功能的信封的软件包吗?请尝试使用spatstat::envelope以确保。关于如何制作一个好的示例的提示,我们可以在这里帮助您:亲爱的Ege,我意识到我的代码并不是一个问题,因为代码中出现了任何错误,事实上,在我同事的计算机中使用R时,相同的精确代码可以完美地工作。我想澄清一下,R版本是相同的(3.1.1),也是软件包的版本。我的IT知识不足以解决这个问题,但至少我成功地运行了我渴望的信封代码。谢谢,根据您的错误消息,最有可能的情况是,在运行此程序的R会话中,您要么附加了另一个名为envelope的函数包,要么自己创建了一个名为envelope的函数。我很高兴这不再是个问题。