我有一个表示每小时温度数据的数组,并希望计算每日最大值(或最小值,或均值).我可以使用for循环来做到这一点,但我相信在R中必须有更好的方法来做到这一点.
require(ncdf4)
nc <- nc_open('file.nc')
t2 <- ncvar_get(nc,var='T2') # [ncols, nrows, nsteps]
Run Code Online (Sandbox Code Playgroud)
现在t2是一个阵列,每天有3144个小时的时间步长.我想要的是:
t2.max[ncols, nrows, 31]
Run Code Online (Sandbox Code Playgroud)
或者,更一般地说,我想重塑t2:
t2.reshape[ncols, nrows, ndays, 24]
Run Code Online (Sandbox Code Playgroud)
从那里我可以使用apply来计算每日平均值或最大值或其他.
我希望结果是一个数组,而不是数据框.
建议?我尝试使用reshape包中的melt/cast,但无法理解如何指定所需的公式.