【问题标题】:Matching and merging two csv files in R在R中匹配和合并两个csv文件
【发布时间】:2016-10-19 18:30:47
【问题描述】:

我有文件 1,其属性如(706 个属性)

Matchid TeamName    Opp_TeamName    TeamRank    Opp_TeamRank    Team_Top10RankingBatsman
1   New Zealand      Bangladesh       1             10                   2
2   New Zealand        India          1             2                    2
3   India             England         2             5                    1
4   Australia        England          6             5                    1

和文件2的属性(706个属性)

id  actual  predicted   error
3         79    206.828     127.828
1         90    182.522     92.522
2         101   193.486     92.486
4         89    174.889     85.889

我想匹配两个文件的“Matchid and id”,并在file1中添加file2属性,这样最终的结果就是

Matchid TeamName    Opp_TeamName    TeamRank    Opp_TeamRank    Team_Top10RankingBatsman    id       actual  predicted   error
1   New Zealand      Bangladesh       1             10                   2                   1         90    182.522     92.522
2   New Zealand        India          1             2                    2                    2        101   193.486     92.486

3   India             England         2             5                    1                   3        79    206.828     127.828
4   Australia        England          6             5                    1                  4         89    174.889     85.889

到目前为止,我已经尝试过简单的merge 函数,但没有成功,我该如何完成我的任务?

【问题讨论】:

  • merge 应该可以工作 (stackoverflow.com/questions/1299871/…)。您还可以使用 dplyr 包中的 join 函数。
  • 为什么merge 不起作用?你能提供你的代码吗?如果您更熟悉 SQL,可以使用sqldf

标签: r csv merge


【解决方案1】:
merge(file1,file2,by.x="Matchid",by.y="id")

也许是这样?

【讨论】:

    【解决方案2】:

    dplyr 方式:

    library(dplyr)
    
    joined <- inner_join(file_1, file_2, by = c("Matchid" = "id"))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-02-21
      • 2015-12-22
      • 2018-04-07
      • 1970-01-01
      • 2013-10-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多