Мой вопрос основывается на более раннем сообщении How to extract data from a RasterBrick?. У меня есть несколько файлов netCDF с данными температуры в lat, long и depth для разных периодов времени (по 6 месяцев каждый). У меня также есть кадр данных с lat, долго и время, так как я хотел бы извлечь данные о поверхностных поверхностных данных из файлов netcdf. Прежде чем извлечь эти данные, я хотел бы преобразовать и объединить все файлы netcdf в один RaterBrick (который проще в использовании). Когда я использую цикл для «кирпича» и «слияния» файлов, он создает объект RasterLayer только с одним слоем вместо растрового кирпича, который я ожидал. Я ищу в Интернете, но пока не могу найти правильное решение этой проблемы.Как проложить несколько RasterBrick, чтобы создать один большой RasterBrick?
Я перестаю использовать петли, поэтому извините заранее, если я задаю вопрос с очень легким ответом, но я действительно мог бы использовать некоторые советы.
Вот что я сделал до сих пор:
Создать список файлов всех NetCDF файлов.
#Open all files, creats a list of 12 files
files= list.files('copernicus/daily_temp/',pattern='*.nc', full.names=TRUE)
Попробуйте перебрать список файлов, чтобы создать кирпичи. Слейте эти многослойные кирпичи вместе, чтобы сформировать один большой RasterBrick с данными о температуре поверхности моря (уровень = 1) в день.
# Loop over files to creat a RasterBrick of temp at SST
for(i in 1:length(files)) {
temp <- brick(files[i], varname="votemper",level=1)
temp.brick<-merge(temp)}
# Look what one brick is build out of
> temp
class : RasterBrick
dimensions : 375, 297, 111375, 184 (nrow, ncol, ncell, nlayers)
resolution : 0.11111, 0.06667 (x, y)
extent : -19.94444, 13.05523, 40.03333, 65.03459 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0
data source : C:\Users\PFA\Dropbox\HOM\copernicus\daily_temp\daily_temp_2003_2.nc
names : X2003.07.01, X2003.07.02, X2003.07.03, X2003.07.04, X2003.07.05, X2003.07.06, X2003.07.07, X2003.07.08, X2003.07.09, X2003.07.10, X2003.07.11, X2003.07.12, X2003.07.13, X2003.07.14, X2003.07.15, ...
Date : 2003-07-01, 2003-12-31 (min, max)
varname : votemper
level : 1
# Look at what the merged bricks are build out of
class : RasterLayer
dimensions : 375, 297, 111375 (nrow, ncol, ncell)
resolution : 0.11111, 0.06667 (x, y)
extent : -19.94444, 13.05523, 40.03333, 65.03459 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0
data source : in memory
names : layer
values : 280.677, 297.669 (min, max)
Любые советы или советы о том, как решить эту проблему, были бы очень признательны!
Спасибо, миллион!
Что 'nlayers (темп)' сказать? –
nlayers - 184 в этом случае. В файле количество слоев составляет 184 или 181, два файла - один год. – Elisah
Я думаю, вам нужно предоставить два или более RasterBricks, чтобы фактически объединить их. Ваш код как есть, просто объединяет один объект, который может не делать то, что вы думаете. –