我最近处理的数据集按以下顺序排列:
country year ...
Albania 2012 ...
Albania 2013 ...
Albania 2014 ...
Albania 2015 ...
Albania 2016 ...
Bulgaria 2012 ...
Bulgaria 2013 ...
Bulgaria 2014 ...
Bulgaria 2015 ...
Bulgaria 2016 ...
... ...
... ...
我经常需要在分析之前向数据集中添加一个新列,但是对于我来说,年份列的存在会使它稍微复杂一些。想象一下第二个数据集如:
country year gdp
Albania 1970 12111
Albania 1971 12222
... ... ...
Albania 2016 22333
... ... ...
Bulgaria 1970 15333
Bulgaria 1971 15444
... ... ...
如何以确保gdp值转到正确的country-year行的方式合并上述两个数据集?
谢谢。
答案 0 :(得分:1)
让您的第一个数据集为df1
,第二个数据集为df2
df3 <- merge(x=df1,y=df2,by=c("country","year"),all.x=TRUE)
哪个是左外连接(假设你有df1
中所有年份的gdps
有关详细信息,请参阅此处: How to join (merge) data frames (inner, outer, left, right)?