我正在为线性网络上的观察点模式进行线性K函数,我得到以下错误
Error in retainedges[dat$seg] : invalid subscript type 'list'
我不明白这意味着什么,我应该如何纠正它。
在回溯调用中,我收到以下信息
> traceback()
4: thinNetwork(x, retainvertices = subi)
3: countends(L, X[-j], D[-j, j], toler = toler)
2: linearKengine(X, r = r, ..., denom = denom, correction = correction,
ratio = ratio)
1: linearK(sl2)
有人可以帮我解决这个错误的含义以及如何纠正错误。
谢谢。
答案 0 :(得分:1)
您的网络因断开连接而有点问题。它有一个非常大的组件,有3755个顶点和5593个线,然后是5个小组件,只有2或3个顶点,1或2个线没有连接到其他任何东西。在你的例子中,你在这个大网络中只有两个点(据我所知,这两个点都出现在大组件中)。我们或许可以在spatstat
的未来版本中处理这个问题,但是现在我建议您简单地丢弃小的空组件。然后我认为linearK
按照你的例子的预期工作(虽然我怀疑你从2点的模式中找到有趣的信息!)。
要识别线性网络的已连接组件,请使用带有参数connected.linnet
的{{1}},然后获取已连接组件的列表,并且可以使用大连接组件来定义新的what = "components"
已连接lpp
。使用您的示例,您可以执行类似的操作(注意组件编号1是主要组件):
linnet