我有一个数据框
df <- data.frame(x = rep(seq(1:10), 10), y = rep(seq(1:10), each = 10), diameter = rnorm(100, 0.3, 0.03), height = rnorm(100, 0.2, 001))
Run Code Online (Sandbox Code Playgroud)
ppp我想通过pppof包转换为文件spatstat。我希望diameter和height变量是,marks但我不能这样做。我尝试过这个
pp1<-ppp(df$x, df$y, marks = data.frame(df %>% select(diameter, height)))
Run Code Online (Sandbox Code Playgroud)
但不起作用。
我想要的输出类似于finepines附加到spatstat包中的数据文件
> finpines
Marked planar point pattern: 126 points
Mark variables: diameter, height
window: rectangle = [-5, 5] x [-8, 2] metres
Run Code Online (Sandbox Code Playgroud)
您需要先定义观察窗口,然后才能定义平面点图案,ppp因为我们需要知道观察到点的位置和没有观察到点的位置。例如,过程的强度是每个区域的平均点数,因此我们需要知道研究区域的面积。
在您的示例中,我假设研究区域(观察窗口)为 [0, 11] x [0, 11]。然后你可以这样做:
library(spatstat)
df <- data.frame(x = rep(seq(1:10), 10),
y = rep(seq(1:10), each = 10),
diameter = rnorm(100, 0.3, 0.03),
height = rnorm(100, 0.2, 001))
W <- owin( c(0, 11), c(0,11) )
pp1 <- as.ppp( df, W = W)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2611 次 |
| 最近记录: |