У меня есть данные с суточной средней температурой за 16 лет в формате netCDF
, размер файла довольно большой (около 3 ГБ). Изначально я использовал пакет raster
для загрузки исходных данных с сеткой в объект * RasterStack
.
Мне интересно, как я могу исключить данные о погоде, когда их временные диапазоны не соответствуют моим интересам. В частности, я хочу использовать данные о погоде только за 5 лет, а здесь у меня есть данные о погоде за 15 лет. Как я могу использовать эту фильтрацию для многослойных растровых данных в R? Например, промежуток времени моих исходных данных в сетке варьируется от 1980.1.1 до 1995.12.31, и я хочу сохранить только температурные данные с 1980.1.1 до 1984.12.31. Как я могу отфильтровать желаемую сетку температур из многослойного растра в R? Любая возможная идея, чтобы это произошло?
Воспроизводимый пример :
r <- raster(xmn=5.75, xmx= 15, ymn = 47.25, ymx =55,res=c(0.25,0.25))
tempDat<- do.call(stack,lapply(1:5844,function(i) setValues(r,round(runif(n = ncell(r),min = -4,max = 23)))))
names(tempDat) <- paste0('X',gsub('-','.',ymd('1980.01.01') + days(1:5844)))
Обновление
Если есть другие удобные инструменты, которые могут легко разбить файл на 1017 *, я хотел бы знать, как это сделать. Любой самый быстрый способ отфильтровать мои среднесуточные значения температуры из многослойной растровой сетки будет работать для меня. Спасибо
желаемый вывод :
Я хочу сохранить только среднесуточные данные о температуре с 1980.1.1 по 1984.12.31; как я могу это сделать? как я могу управлять этой фильтрацией на многослойной растровой сетке в R? Есть еще мысли? Спасибо