R: Сумма массива XYZ (файл netcdf) для каждых двух измерений Z до конца измерений Z
Файл netcdf содержит данные о количестве осадков за каждые 12 часов за июль 2017 года. Таким образом, он имеет размеры 62 z или величину дождя за 31 день июля. Для получения ежедневных данных о количестве осадков нам нужно делать сумму каждых 12 часов дождя каждый день. Значит, для этого требуется сумма каждых двух измерений z или величины дождя до конца и назначение суточной даты каждому суммированному (т. Е. Суточному дождю) измерению и сохранение в виде нового файла netcdf. Как я могу это сделать?
Я сделал немного базового кодирования здесь. И пример файла netcdf прилагается здесь данные netcdf
install.packages("ncdf4")
library(ncdf4)
ncdata <- nc_open("ecmwf_rain.nc")
# List variable names
names(ncdata$var)
# List dimension names
names(ncdata$dim)
# get time
time <- ncvar_get(ncdata,"time")
tunits <- ncatt_get(ncdata,"time","units")
nt <- dim(time)
dname <- 'tp'
rain <- ncvar_get(ncdata, 'tp')
dim(rain)
# convert time -- split the time units string into fields
tustr <- strsplit(tunits$value, " ")
tdstr <- strsplit(unlist(tustr)[3], "-")
tmonth <- as.integer(unlist(tdstr)[2])
tday <- as.integer(unlist(tdstr)[3])
tyear <- as.integer(unlist(tdstr)[1])
timed <- time/24
date <- chron(timed,origin=c(tmonth, tday, tyear))
date <- date-0.5