Слияние может привести к созданию кадра данных с большим количеством строк, чем в оригиналах, если нет простого сопоставления 1-1 двух кадров данных.В этом случае ему придется скопировать всю геометрию и создать несколько полигонов, что, вероятно, не очень хорошая вещь.
Если у вас есть фрейм данных, который имеет то же количество строк, что и SpatialPointsDataFrame, тогда вы можетепросто замените слот @data.
library(sp)
example(overlay) # to get the srdf object
srdf@data
spplot(srdf)
srdf@data=data.frame(x=runif(3),xx=rep(0,3))
spplot(srdf)
, если неверное количество строк:
srdf@data=data.frame(x=runif(2),xx=rep(0,2))
spplot(srdf)
Error in data.frame(..., check.names = FALSE) :
arguments imply differing number of rows: 3, 2