match two data.frames based on multiple columns

后端 未结 3 1692
被撕碎了的回忆
被撕碎了的回忆 2021-01-11 17:19

My head stands still at the moment. I would like to match/extract data from a larger data.frame (df) based on the columns in a smaller data.frame (mdf). What I\'m getting st

3条回答
  •  青春惊慌失措
    2021-01-11 18:03

    In case you would use match or %in% on multiple columns you could use interaction, paste or use a list to match on multiple columns.

    df[match(interaction(mdf), interaction(df[c("car_1", "car_2")])),]
    
    df[match(paste(mdf$car_1, mdf$car_2), paste(df$car_1, df$car_2),),]
    
    df[match(asplit(mdf, 1), asplit(df[c("car_1", "car_2")], 1)),]
    
    df[interaction(df[c("car_1", "car_2")]) %in% interaction(mdf),]
    

提交回复
热议问题