R 如何合并两个数据帧,其中只有一些匹配的列名和该列中的一些匹配值?
我尝试合并两个数据帧。每个数据框中有两列具有匹配的标题,比如“State”和“City” df1只有一定数量的州和城市组合,而df2拥有所有这些组合 我想从df2中获取Pov2009和Pov2010,并将这两列添加到df1中,使其对应的州/市与df1中的州/市匹配。我还希望df2中列出的所有在df1中没有出现的州和城市都消失 结果将是df3R 如何合并两个数据帧,其中只有一些匹配的列名和该列中的一些匹配值?,r,R,我尝试合并两个数据帧。每个数据框中有两列具有匹配的标题,比如“State”和“City” df1只有一定数量的州和城市组合,而df2拥有所有这些组合 我想从df2中获取Pov2009和Pov2010,并将这两列添加到df1中,使其对应的州/市与df1中的州/市匹配。我还希望df2中列出的所有在df1中没有出现的州和城市都消失 结果将是df3 df1 State City Votes2007 CA SF 17000 CA
df1
State City Votes2007
CA SF 17000
CA Fresno 16500
NY Ithaca 12100
ID Boise 17200
df2
State City Pov2009 Pov2010
CA SF .1 .15
OR Bend .05 .05
NY Ithaca .02 .04
NY Montauk .03 .02
CA Fresno .15 .12
ID Boise .04 .04
df3
State City Votes2007 Pov2009 Pov2010
CA SF 17000 .1 .15
CA Fresno 16500 .15 .12
NY Ithaca 12100 .02 .04
ID Boise 17200 .04 .04
我尝试了merge()、dplyrs internal_join()和其他一些我在这个网站上找到的东西,但是没有一个问题是我想要的
innerjoin
使用两列
df3 <- merge(df1, df2, by= c("State", "City"))
State City Votes2007 Pov2009 Pov2010
1: CA SF 17000 0.10 0.15
2: CA Fresno 16500 0.15 0.12
3: NY Ithaca 12100 0.02 0.04
4: ID Boise 17200 0.04 0.04
df3internal_-join()
如果您通过两列进行连接,则应该可以使用:internal_-join(df1,df2,by=c(“State”,“City”)
您是如何使用它们的<代码>合并
,左联合
和内联合
都适合我。您是否已通过两个变量连接,即通过=c(“州”、“市”)?