我需要在列表xySpatialLines
中保存100个SpatialLines对象。下面给出的代码提供了一个错误:
xySpatialLines [i] = spl中的错误:无效的类型/长度(S4 / 0)in 矢量分配
library(sp)
xySpatialLines <- NULL
for(i in 1:100)
{
x <- c(i,5,4,8)
y <- c(1,3,4,i)
xy <- cbind(x,y)
xy.sp = sp::SpatialPoints(xy)
spl <- SpatialLines(list(Lines(Line(xy.sp), ID=i)))
xySpatialLines[i] = spl
}
答案 0 :(得分:4)
初始化xySpatialLines
不是NULL而是作为列表,例如由
xySpatialLines <- list()
或更好,预先分配您需要的空间以避免增量增长:
xySpatialLines <- vector(mode = "list", length = 100)
然后执行脚本的其余部分。