我正在尝试根据Time
列合并两个数据帧。它们每个都有不同格式的时间值。它们看起来如下:
Labourproductivity
和Depressiondframe
的示例数据集:
Labourproductivity <- read.csv(text="
Time,LabourProductivity
2004 Q1,96.6
Q2,96.9
Q3,96.9
Q4,97.1
2005 Q1,97.6
Q2,99.0")
Depressiondframe <- read.csv(text="
Time,DepressionCount
2004.00,875
2004.25,820
2004.50,785
2004.75,857
2005.00,844")
数据:
Labourproductivity
Time LabourProductivity
1 2004 Q1 96.6
2 Q2 96.9
3 Q3 96.9
4 Q4 97.1
5 2005 Q1 97.6
6 Q2 99.0
Depressiondframe
Time DepressionCount
1 2004.00 875
2 2004.25 820
3 2004.50 785
4 2004.75 857
5 2005.00 844
如何根据Time
合并两个数据框?
答案 0 :(得分:1)
这是一种可能的方法。我们将使用zoo
包,它可以使用Depressiondframe$Time
函数轻松地将zoo::as.yearqtr
转换为所需的格式,而第二个更棘手,我们将使用stringi::stri_extract_first_regex
和{{1为了处理它。然后,只需一个简单的zoo::na.locf
即可完成任务
merge