Извлечение данных из нижних слоев в растробрике -- r поле с участием raster поле с участием r-raster пол Связанный проблема

Extracting data from lower layers in a Rasterbrick


0
vote

проблема

русский

Итак, я извлекаю данные из растробрика, который я сделал, используя метод из этого вопроса: Как извлечь данные из растробрика?

В дополнение к получению данных из слоя, заданного к дате, я хочу извлечь данные с месяцев до. В лучшем случае, я думаю, я делаю это, делая что-то подобное:

 <код> sapply(1:nrow(pts), function(i){extract(b, cbind(pts$x[i],pts$y[i]), layer=pts$layerindex[i-1], nl=1)})   

Так что это экстракцию должен смотреть на SayerIndex I-1, это должно затем дать данные на один месяц ранее. Таким образом, точка со SayerIndex = 5, должна смотреть на слой 5-1 = 4.
Однако это не делает это и, похоже, дает ни какое-либо случайное число, ни дубликат с месяцев до. Что будет правильным способом поступить об этом?

Английский оригинал

So I'm extracting data from a rasterbrick I made using the method from this question: How to extract data from a RasterBrick?

In addition to obtaining the data from the layer given by the date, I want to extract the data from months prior. In my best guess I do this by doing something like this:

sapply(1:nrow(pts), function(i){extract(b, cbind(pts$x[i],pts$y[i]), layer=pts$layerindex[i-1], nl=1)}) 

So it the extracting should look at layerindex i-1, this should then give the data for one month earlier. So a point with layerindex = 5, should look at layer 5-1 = 4.
However it doesn't do this and seems to give either some random number or a duplicate from months prior. What would be the correct way to go about this?

</div
        

Список ответов

0
 
vote
vote
Лучший ответ
 

Ваш код принимает значение из слоя предыдущей точки, а не предыдущий слой.

Чтобы увидеть, что представь, мы смотрим на точку в строке 2 (i = 2). Ваш код, который указывает на слой <код> pts$layerindex[i-1] , который является pts$layerindex[1] . Другими словами, слой точки в строке 1.

Исправление достаточно легко. Для ясности я напишу функцию раздела:

 <код> foo = function(i) extract(b, cbind(pts$x[i],pts$y[i]), layer=pts$layerindex[i]-1, nl=1) sapply(1:nrow(pts), foo)   

Я не проверил это, но это должно быть все.

 

Your code is taking the value from the layer of the previous point, not the previous layer.

To see that imagine we are looking at the point in row 2 (i=2). your code that indicates the layer is pts$layerindex[i-1], which is pts$layerindex[1]. In other words, the layer of the point in row 1.

The fix is easy enough. For clarity I will write the function separetely:

foo = function(i) extract(b, cbind(pts$x[i],pts$y[i]), layer=pts$layerindex[i]-1, nl=1) sapply(1:nrow(pts), foo) 

I have not tested it, but this should be all.

</div
 
 

Связанный проблема

12  Частные члены в R Справочник класса R  ( Private members in r reference class ) 
Можно ли иметь частные поля элементов внутри класса R r. Играя с некоторыми из онлайн-примеров у меня есть: <код> > Account <- setRefClass( "ref_Account"...

3  R: Обновить график [XY] Lims с новыми пунктами () или линий () дополнениями?  ( R update plot xylims with new points or lines additions ) 
Фон: Я запускаю симуляцию Монте-Карло, чтобы показать, что конкретный процесс (совокупное среднее) делает не сходится со временем, и часто отклоняется ...

7  Ось X не соответствует барплоту  ( X axis does not match barplot ) 
Я использовал функцию barplot () для создания сложенного диаграммы из матрицы. Матрица выглядит так: <код> 1 0.989013 0.010987 2 0.999990 0.000010 3 0.999...

0  Трудно заполнить NAS с вмененными ценностями петлей, но не один за другим  ( Difficultly filling nas with imputed values by loop but not one by one ) 
Так что у меня есть матрица в R, это подмножество данных DataFrame, удерживающееся немного больше, чем идентификатор, группируя переменную и серии 1100 показа...

139  Игнорировать выбросы в ggplot2 boxplot  ( Ignore outliers in ggplot2 boxplot ) 
Как бы я игнорировал выбросы в ggplot2 boxplot? Я не просто хочу, чтобы они исчезнули (то есть выброса .size = 0), но я хочу, чтобы они были игнорированы таки...

6  Определить, имеет ли последовательность «пробелы» в R  ( Determine if a sequence has gaps in r ) 
Я хотел бы определить, содержит ли последовательность любых пробелов или нерегулярных шагов? Не уверен, что это правильный путь к фразум это, и есть хороший ш...

0  R Язык: Как работать с динамически размером вектора?  ( R language how to work with dynamically sized vector ) 
Я изучаю программирование R, и пытаясь понять лучший подход к работе с вектором, когда вы не знаете, последний размер, он в конечном итоге будет. Например, в ...

1  Как прочитать файлы суффикса .avl в r?  ( How to read avl suffix files into r ) 
Я загрузил глобальные водно-болотные угодья и озерные данные из этой ссылки: https://www.worldwildlife.org/pages/globalakes- и-водно-болотный угодья база дан...

1  Ошибка при использовании функции nnetar из пакета прогноза  ( Error when using nnetar function from forecast package ) 
У меня есть следующие данные: <код> kafka4 ................. Когда я выполняю функцию Nnetar, я получаю следующую ошибку: <код> kafka5 Я попробова...

1  Проектирование длинные / латы с несколькими utm ZON  ( Projecting long lat with multiple utm zones ) 
Мне нужно проецировать свои длинные / латы-данные на разные UTM-зоны в R, что и мои данные, пропавшие от Габона в Центральноафриканскую Республику. Код, котор...

0  Коэффициент переменных членства в R  ( Coefficient variable membership in r ) 
Я разработал ужасно длительное решение для этого перед использованием регулярных выражений, но я надеюсь, что есть более родственный способ сделать это. Учи...

8  Использование геоконининов в качестве координат вершин в Igraph R-пакет  ( Using geo coordinates as vertex coordinates in the igraph r package ) 
в пакете igraph для R, я борюсь, чтобы построить социальную сеть, используя координаты широты / долготы в качестве макета графика. Представьте себе этот про...

2  Как изменить график разброса GGPlot2  ( How to modify ggplot2 scatter plot ) 
Вот мой набор данных: <код> df1 = data.frame(Count.amp = c(8,8,1,2,2,5,8), Count.amp.1 = c(4,4,2,3,2,5,4)) Я попробовал <код> library(ggplot2) qplot(C...

0  Ошибка при использовании списков  ( Error when using lists ) 
У меня есть файл .rdata со списком внутри. Однако я получаю сообщение об ошибке при попытке отобразить список. <код> ls(data$Test$t0) Error in list2env(lis...

0  Как проанализировать много файлов Excel с R [дублировать]  ( How to analyse many excel files with r ) 
<в сторону CLASS = "S-NEWACTS S-WELTIVE__info JS-Post-New Imide MB16« Роль = «Статус»> Этот вопрос уже имеет ответ здесь : ...




© 2021 www.qaru.top All Rights Reserved. Q&A House все права защищены


Licensed under cc by-sa 3.0 with attribution required.