Использование «экстракта» rasterpackage для rasterlayer дает ошибку в r

Я хочу объединить данные об осадках с файлом .csv df. Я понял, что это должно работать с командой "извлечь" из растрового пакета. Это мои данные об осадках:

str(precipitation_raster_layer)
Formal class 'RasterLayer' [package "raster"] with 12 slots
  ..@ file    :Formal class '.RasterFile' [package "raster"] with 13 slots

Вот мои данные о помощи, связанной с климатом:

str(AID)
'data.frame':   1050 obs. of  21 variables:
 $ project_location_id     : Factor w/ 1050 levels "P000501_2427123",..: 189 190 191 192 193 194 188 195 196 187 ...
 $ precision_code          : int  3 3 3 3 3 3 3 3 3 2 ...
 $ latitude                : num  6.45 6.74 6.47 5.66 6.6 ...
 $ longitude               : num  -1.583 -3.044 -2.333 -0.39 0.467 ...

Используя эту команду:

test <- extract(precipitation_raster_layer, AID[,3:4])

Error in UseMethod("extract_") : no applicable method for 'extract_' applied to an object of class "c('RasterLayer', 'Raster', 'BasicRaster')"

Если я преобразовываю .csv в SpatialPointsDataFrame и пытаюсь запустить «extract», я получаю эту ошибку:

test <- extract(precipitation_raster_layer, AID_spatial_df)

Error in UseMethod("extract_") : no applicable method for 'extract_' applied to an object of class "c('RasterLayer', 'Raster', 'BasicRaster')"

Я действительно не понимаю, почему написано, что мой объект не является RasterLayer.

Любая помощь приветствуется.

Где говорится, что ваш объект не является растровым слоем?

user3603486 11.04.2018 12:00
1
1
672
1

Ответы 1

Я предполагаю, что после загрузки raster вы загрузили другой пакет, в котором также есть метод extract, который скрывает этот метод от raster.

Загрузите только те пакеты, которые вам нужны, и попробуйте явно вызвать метод extract из raster:

raster::extract(precipitation_raster_layer, AID[, 4:3])

Обратите внимание, что это должно бытьAID[, 4:3], нетAID[, 3:4], так как правильный порядок - долгота, широта. Но это не причина ошибки, которую вы получаете.

Другие вопросы по теме