【发布时间】:2022-01-03 22:48:45
【问题描述】:
我需要加入/合并两个具有不同频率和长度的数据帧,df1 和 df2。在这些数据框中,日期对应于值(value1 和 value2)的更改日期。
数据框是:
State <- c(A,A,A,B,B,B)
Date1 <- c(01/01/2015, 02/04/2015, 12/01/2016, 03/02/2015, 02/05/2015, 25/01/2016)
Date2 <- C(01/02/2013, 01/04/2015, 19/07/2013, 23/01/2016)
value1 <- c(2.5, 3.2, 2.7, 3.1, 3.6, 2.8)
value2 <- c(0.12, 0.25, 0.2, 0.3)
df1 <- data.frame(State, Date1, value1)
df2 <- data.frame(State, Date2, value2)
那么我们有:
State Date1 Value1
A 01/01/2015 2.5
A 02/04/2015 3.2
A 12/01/2016 2.7
B 03/02/2015 3.1
B 02/05/2015 3.6
B 25/01/2016 2.8
State Date2 Value2
A 01/02/2013 0.12
A 01/04/2015 0.25
B 19/07/2013 0.20
B 23/01/2016 0.30
我想加入/合并这两个数据框并将它们调整为相同的时间频率(每天或每周)。对于每日频率,理想的结果是:
State Date Value1 Value2
A 01/02/2013 NA 0,12
A 02/02/2013 NA 0,12
(...)
A 01/01/2015 2,5 0,12
(...)
A 01/04/2015 2,5 0,25
A 02/04/2015 3,2 0,25
(...)
A 12/01/2016 2,7 0,25
(...)
B 19/07/2013 NA 0,20
(...)
B 03/02/2015 3,1 0,20
(...)
B 02/05/2015 3,6 0,20
(...)
B 23/01/2016 3,6 0,30
B 24/01/2016 3,6 0,30
B 25/01/2016 2,8 0,30
感谢任何帮助!
【问题讨论】:
-
你能详细说明你所说的频率是什么意思吗?
-
时间序列的频率:每天、每周等重复观察。我现在拥有的 df 没有恒定的频率。
标签: r dataframe join merge time-series