#r #matrix #extrapolation
Вопрос:
У меня есть несколько тепловых карт (пример ниже), из каждой из которых я извлекаю матрицу значений. Моя проблема в том, что на изображениях значения выше определенного порога (в данном случае 200) ограничиваются этим порогом и отображаются в виде цвета фушиа. Я пытаюсь экстраполировать эти значения. Я попытался заменить 200 на NA и использовать na.approx и na.сплайн из пакета zoo, approxExtrap из пакета Hmisc, а также использовать регрессию лесса по столбцам. Лесс был единственным методом, который вообще давал значения выше 200, но все еще далеко не приближался к фактическим значениям (у меня есть таковые для нескольких изображений). Есть какие-нибудь идеи?
Ответ №1:
Хорошо, я смог сделать это с умеренным успехом, используя interp()
функцию из akima
пакета, используя флаги linear = FALSE, extrap = TRUE
. Для каждого изображения требовалось целых 30 секунд, на некоторых изображениях оно работало идеально, но имело тенденцию к переоценке, когда область фушия была слишком большой.