我在分析STATS19道路事故数据,由UK government向公众公开提供。我想看看如何聚集不同类型的事故。可以使用“G函数”(描述here)来测量来自完全空间随机性“CSR”的情况的点模式的偏差。限制在路网中的R中的聚类功能
spatstat很好地处理了这种问题,envelope
函数提供了模式从不同距离的CSR偏离的程度的可视化。然而,正如我的同事Dan Olner所指出的那样,结果(如下所示,显示与CSR有很大的分歧)并不一定表现出聚类 - 可能很简单,我们正在检测道路网络的自然分组,大部分道路交通事故都发生该图下方可以通过克隆我GitHub repo和运行下面的被复制(运行后WY.R的部分):
r <- seq(0, sqrt(2)/6, by = 0.005)
acB1 <- elide(acB, scale = TRUE)
# acB1 <- acB1[1:50,] # for tiny subset
acB1 <- SpatialPoints(acB1)
# Calculate the G function for the points
envacB <- envelope(as(acB1, "ppp"), fun = Gest)
# Calculate the G function for the points
plot(envacB)
这个问题实际上是由阿德里安·巴德利(spatstat的开发者)自己形容在package's documentation:
在一名维点可能是位置(记录道路网络上的诸如 道路交通事故)
这正是我所面临的情况,但我不知道如何修改上面提到的分析来限制CSR(或者更好,接近 - 因为并非所有事故都在路上 - 请参阅下文)公路网。 (见数据here)。
一个建议是从路网采取随机点和计算G功能,这和它与我的事故数据进行比较,但不会产生明显的(统计上显著)边界框。有什么建议么?
非常感谢Ege - 确实需要网络实现聚类算法。这是关于线性K函数的原始论文http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.201.3884&rep=rep1&type=pdf正在转向实现linearK和linearKcross! – RobinLovelace