【问题标题】:Merge two dataframes on a third dataframe that links the two在链接两者的第三个数据帧上合并两个数据帧
【发布时间】:2021-07-22 04:02:51
【问题描述】:

我不知道如何表达这一点,但我在 R 中有三个数据框。一个带有名字和 kill score,一个带有姓氏和 killscore,一个带有名字和姓氏。我想根据第三个数据帧将第一个数据帧与第二个数据帧结合起来,例如:

kills1
     [,1]    [,2]
[1,] "Matt"  "5" 
[2,] "John"  "6" 
[3,] "Chris" "4

kills2
     [,1]    [,2]
[1,] "Wick"  "10"
[2,] "Damon" "3" 
[3,] "Rock"  "9" 

 fullnames
     [,1]    [,2]   
[1,] "John"  "Wick" 
[2,] "Matt"  "Damon"
[3,] "Chris" "Rock"

期望的输出

allkills
     [,1]         [,2] [,3]
[1,] "John Wick"  "6"  "10"
[2,] "Matt Damon" "5"  "3" 
[3,] "chris Rock" "4"  "9"

【问题讨论】:

    标签: r dataframe merge


    【解决方案1】:

    考虑两个merge,每列“fullnames”为“kills1”,第一列为“kills2”(将matrix转换为data.frame后)

    out1 <- merge(as.data.frame(fullnames), as.data.frame(kills2),
            by.x = 'V2', by.y = 'V1')
    out1 <- merge(out1, as.data.frame(kills1), by.x = 'V1', by.y = 'V1')
    

    【讨论】:

      猜你喜欢
      • 2021-03-10
      • 2014-04-14
      • 1970-01-01
      • 1970-01-01
      • 2016-10-30
      • 1970-01-01
      • 2018-02-18
      • 1970-01-01
      • 2020-04-07
      相关资源
      最近更新 更多