我试图在一系列连续时间点找到太阳辐射强度图下的区域。基本上我想要过去 24 小时太阳辐射在 7 天内每小时的积分 - 过去 24 小时的移动总和 - (我怀疑土壤中的温度是过去 24 小时太阳辐射的结果)
这是我正在使用的代码,它可以工作,但我想自动化它,以便我可以轻松更改积分时间窗口(尝试 12、18、24,36 小时)并获得打印/保存的每小时积分太阳辐射表我可能会根据我的每小时温度数据绘制的值以查看是否存在关系)
这里: Rg - 10 分钟测量中的太阳辐射 num - 数据框中的条目号 AUC_xxx - 过去 24 小时的总太阳辐射
y<-as.numeric(xx$Rg[xx$num["2015-09-13 14:10"]:xx$num["2015-09-14 14:00"]])
x<-c(1:length(y))
id <- order(x)
AUC_s14_14 <- sum(diff(x[id])*rollmean(y[id],2))
我尝试使用 rollapply,但我又被卡住了:
rollapply(xx$Rg[xx$num["2015-09-13 00:10"]:xx$num["2015-09-14 00:00"]], width = 144, by = 6, FUN = **"INTEGRAL"**, na.rm = TRUE, align = "left")
谢谢您的帮助 !