Экспорт растра на основе значения таблицы атрибутов в R

У меня есть большой растровый файл со связанной таблицей атрибутов растра (RAT):

class       : RasterLayer 
dimensions  : 32550, 13900, 452445000  (nrow, ncol, ncell)
resolution  : 1, 1  (x, y)
extent      : 0, 13900, 0, 32550  (xmin, xmax, ymin, ymax)
coord. ref. : NA 
data source : H:\My Drive\raster.grd 
names       : mr200_2012 
values      : -318, 151078  (min, max)
attributes  :

ID COUNT  Value_of_interest 
1   4        45
2   7        1
3   94       5
4   5        7
...

Растр отображается со значениями от -318 до 151078. Я хочу иметь возможность экспортировать растр с одним из значений атрибута в качестве «значения». Например, изменение «значения» на «Value_of_interest», чтобы растр отображал (мин., Макс.) От 1 до 45.

Это очень похоже на то, как инструмент Искать работает в ArcMap. Я просто ищу программный способ сделать это.

Я не так много работал с RAT и не знаком с некоторыми его функциями. Я пробовал использовать подход data.table и data.frame, но результирующая таблица действительно большая и в большинстве случаев не создается из-за размера. Я думал, что могу создать data.frame с координатами xy, а затем изменить значение z на «Value_of_interest».

Думаю, этого будет достаточно воспроизводимых данных:

xy <- matrix(rnorm(200),20,20)
xy<-raster(xy)
xy
rat<-data.frame("ID" = runif (10,0,10),
            "b" = runif (10,0,10),
            "variable of interest" = runif (10,10,20))


levels(xy)[[1]]<-rat
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
691
1

Ответы 1

Я нашел решение этой проблемы. Используя функцию deratify, вы можете выделить определенные атрибуты и создать новые одноканальные растры.

New.raster <- deratify(Raster.with.attributes, "Some_Column_in_raster")

Новый растр будет одноканальным со значениями указанного столбца.

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