У меня есть SPointsDataFrame
с 130 obs (outBuff1) и числовым c списком из 96 индексов, которые нужно удалить из этого spdf (inBuff2id)
> str(outBuff1)
Formal class 'SpatialPointsDataFrame' [package "sp"] with 5 slots
..@ data :'data.frame': 130 obs. of 8 variables:
.. ..$ RamID : chr [1:130] "01BC" "01BC" "02BC" "02BC" ...
.. ..$ Long : num [1:130] -121 -121 -121 -121 -121 ...
.. ..$ Lat : num [1:130] 50.8 50.8 50.8 50.8 50.8 ...
.. ..$ CollarID: int [1:130] 34448 34448 ...
.. ..$ Herd : chr [1:130] "Cattle Creek" "Cattle Creek" ...
.. ..$ PDate : chr [1:130] "2012-11-29 08:09:00" "2012-11-29 08:10:00" ...
.. ..$ x : num [1:130] 622472 622596 624274 ...
.. ..$ y : num [1:130] 5634417 5630417 5634329 ...
..@ coords.nrs : num(0)
..@ coords : num [1:130, 1:2] 622572 622596 622274 645136 622479 ...
.. ..- attr(*, "dimnames")=List of 2
.. .. ..$ : NULL
.. .. ..$ : chr [1:2] "coords.x1" "coords.x2"
..@ bbox : num [1:2, 1:2] 621559 5625613 653404 5630507
.. ..- attr(*, "dimnames")=List of 2
.. .. ..$ : chr [1:2] "coords.x1" "coords.x2"
.. .. ..$ : chr [1:2] "min" "max"
..@ proj4string:Formal class 'CRS' [package "sp"] with 1 slot
.. .. ..@ projargs: chr "+proj=utm +zone=10 +ellps=WGS84 +units=m +no_defs"
> str(inBuff2id)
num [1:96] 112 113 114 115 277 278 279 280 281 282 ...
Я хочу удалить эти индексы из SPDF, звучит просто:
outBuff2=outBuff1[-inBuff2id,]
НО:
> str(outBuff2)
Formal class 'SpatialPointsDataFrame' [package "sp"] with 5 slots
..@ data :'data.frame': 126 obs. of 8 variables:
.. ..$ RamID : chr [1:126] "01BC" "01BC" "02BC" "02BC" ...
.. ..$ Long : num [1:126] -121 -121 -121 -121 -121 ...
.. ..$ Lat : num [1:126] 50.8 50.8 50.8 50.8 50.8 ...
.. ..$ CollarID: int [1:126] 34848 34848 34878 34878 34878 34878 34878 34878 34878 34878 ...
.. ..$ Herd : chr [1:126] "Cattle Creek" "Cattle Creek" ...
.. ..$ PDate : chr [1:126] "2012-11-29 08:09:00" "2012-11-29 08:10:00" ...
.. ..$ x : num [1:126] 622472 622596 624274 ...
.. ..$ y : num [1:126] 5634417 5630417 5634329 ...
..@ coords.nrs : num(0)
..@ coords : num [1:126, 1:2] 622572 622596 622274 645136 622479 ...
.. ..- attr(*, "dimnames")=List of 2
.. .. ..$ : NULL
.. .. ..$ : chr [1:2] "coords.x1" "coords.x2"
..@ bbox : num [1:2, 1:2] 622274 5625613 653404 5630507
.. ..- attr(*, "dimnames")=List of 2
.. .. ..$ : chr [1:2] "coords.x1" "coords.x2"
.. .. ..$ : chr [1:2] "min" "max"
..@ proj4string:Formal class 'CRS' [package "sp"] with 1 slot
.. .. ..@ projargs: chr "+proj=utm +zone=10 +ellps=WGS84 +units=m +no_defs"
Удаление 96 аксов из 130 дает мне 126 аксов?!?! В чем здесь моя ошибка ??
Я делал это несколько раз для разных точек, ОБЫЧНО выдает мне правильный результат (математика подходит), но иногда я получаю что-то , что явно неправильно. Почему я получаю это?
Любые предложения будут высоко оценены!