【发布时间】:2021-08-13 07:22:09
【问题描述】:
我有一个(对我来说)艰巨的任务要解决。 我正在处理降水数据,并希望建立一些 SumS 用于评估不同时间尺度的大雨指数。
我在 Excel 中有一个版本,但我想自动化这个过程。 这是 Excel 正在做的事情:
(这里第一次发帖,我真的不知道如何在这里实现文本中的 Excel 视觉......这就是为什么链接到 png)
最后我的目标是这个。 程序应读取导入 csv,其中仅包含 2 列(日期和降水,单位为 mm)。 然后它应该为不同的时间尺度添加列(如图像中)。在图像中,您可以看到标记单元格的 excel“代码”。它将沉淀柱中的 5 个细胞相加。我宁愿倒着做,所以它应该是 =SUM(B6:B10) 如果 10 分钟的列应该是 B1:B10 等等.... 最后我想从新的代表 5、10、15、20 或 60 分钟内的最大降水量的列。
问题: 我没有找到一种方法来获取降水列中的行总和。总是有一些尺寸错误或其他错误。例如我试过这个:
data <- <- read.csv(file = file.choose(),sep=';')
data$d5 <-0
data$d10 <-0
for (i in 2:nrow(data)) {
n <- rowSums(Daata$precip.in.mm[i-1:i,])
data$D5[i] <- n
在这种情况下,他正在考虑维度。我没有看到问题...
如果有人可以帮我解决这个问题,那就太棒了。我猜……很简单(不适合我)的任务。
感谢您的阅读和帮助!
【问题讨论】:
-
您可以通过给我们一个数据示例来进一步帮助我们。加载 csv 后,键入
dput(head(data,18))。这会将文本打印到终端,然后您可以将其复制到您的问题中。此文本包含您数据的前 18 行,以便我们轻松复制。 -
导入 csv 仅包含图片中的 A 列和 B 列。 C,D,E,...应由程序编写(就像我对 data$d5
-
您能否详细说明如何处理最后一次测量。
D=5Min总结下 5 分钟的降水量。但是,当时间线中没有 5 分钟时,它会做什么?它应该显示 NA 还是只是总结剩余但少于 5 个值? -
我猜剩下的数据会是最好的。对于我的工作,我会在大雨事件前后的几个小时内提取数据,这样时间线中的前 120 行和最后 120 行数据对于提取最大值并不那么重要。