我使用spatstat
创建了两个像素图像,一个是由一组点创建的密度图像(使用函数density.ppp
),另一个是从人口创建的像素图像光栅。我想知道是否有办法使用人口栅格来标准化密度图像。基本上,我在美国有一个10000多个网络攻击起源位置的数据集,使用spatstat
函数我希望调查空间模式。然而,显而易见的问题是人口较多的地区有更多的网络攻击来源,因为人口更多。我想用人口光栅来解决这个问题。任何想法,将不胜感激。
答案 0 :(得分:1)
正如@RHA的评论所说:第一个解决方案是简单地除以强度。
我没有你的数据所以我会做一些看似相似的东西。 Chorley数据集有两种类型的癌症病例。我将估计肺癌的强度,并将其用作给定的人口密度。然后,对喉部病例的密度估计作为您对网络攻击强度的估计:
library(spatstat)
# Split into list of two patterns
tmp <- split(chorley)
# Generate fake population density
pop <- density(tmp$lung)
# Generate fake attack locations
attack <- tmp$larynx
# Plot the intensity of attacks relative to population
plot(density(attack)/pop)
或者,您可以使用逆人口密度作为density.ppp
中的权重:
plot(density(attack, weights = 1/pop[attack]))
这可能是首选方式,您基本上可以说攻击发生在例如:一个人口密度为10的地方“仅数”是在密度为5的地方发生的攻击的一半。
我不确定你想要对你的分析做什么,但也许你应该考虑使用ppm
拟合一个简单的泊松模型,看看你的数据如何偏离所提出的模型来理解攻击。