【发布时间】:2021-01-25 21:25:05
【问题描述】:
我正在处理水质数据,我需要在进行测量时根据潮高校正水深。在两天或更长时间内,每分钟测量一次 pH 值、盐度等,但我所拥有的潮汐高度数据仅每小时测量一次。本质上,我想扩展我的潮汐高度数据,通过平均每小时的潮汐高度来每分钟进行一次潮汐测量。一旦我有了,我可以 left_join() 到我的水参数数据框没问题
我更喜欢使用 tidyverse,但此时我会欣喜若狂地寻求任何帮助。抱歉有任何格式问题,这是我的第一个 StackOverflow 问题。
这里是一天的潮高数据框示例:
> Tide_x <- data.frame(Time_Eastern_hr = c(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
+ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23),
+ Tide_Height = c(1.9, 1.7, 1.4, 1.1, 0.8, 0.6, 0.5, 0.6, 0.8, 1.1, 1.4, 1.6, 1.7,
+ 1.6, 1.5, 1.2, 1, 0.8, 0.8, 0.9, 1.1, 1.4, 1.7, 1.9))
> Tide_x
Time_Eastern_hr Tide_Height
1 0 1.9
2 1 1.7
3 2 1.4
4 3 1.1
5 4 0.8
6 5 0.6
7 6 0.5
8 7 0.6
9 8 0.8
10 9 1.1
11 10 1.4
12 11 1.6
13 12 1.7
14 13 1.6
15 14 1.5
16 15 1.2
17 16 1.0
18 17 0.8
19 18 0.8
20 19 0.9
21 20 1.1
22 21 1.4
23 22 1.7
24 23 1.9
但我需要这样的东西,其中 Tide_Height 每分钟计算一次,作为上下 Tide_Height 测量值的平均值。 这里我使用了 1.9 和 1.7,所以 0.2/60 来获得每分钟潮汐高度变化的量,然后在我向下移动列时从上面的行中减去该变化
Time_Eastern_hr Tide_Height
1 0 1.9
2 0.01667 1.8967
3 0.03334 1.8933
4 0.05 1.8900
5 0.0667 1.8867
6 0.0833 1.8833
7 0.1 1.8800
8 0.1167 1.8767
9 0.1333 1.8734
0.15 1.8701
# … with 14 more rows
但是,正如您所见,我不能仅仅因为潮汐比前一小时更高或更低而不断减去,而不是不断降低。此外,每个小时的潮汐之间的差异也会发生变化。
【问题讨论】:
标签: r