Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Dummy example
- # Large df
- df <- mtcars[1:6,1:3]
- df$car_1 <- rownames(df)
- df$car_2 <- rownames(tail(mtcars))
- # df to match
- mdf <- df[c("car_1","car_2")][3:6,]
- rownames(df) <- NULL
- rownames(mdf) <- NULL
- mpg cyl disp car_1 car_2
- 22.8 4 108 Datsun 710 Ford Pantera L
- 21.4 6 258 Hornet 4 Drive Ferrari Dino
- 18.7 8 360 Hornet Sportabout Maserati Bora
- 18.1 6 225 Valiant Volvo 142E
- names(mdf) <- c("car_3", "car_4")
- merge(df, mdf, by.x = c("car_1", "car_2"), by.y = c("car_3", "car_4"),
- all.x = FALSE, all.y = TRUE)
- library(dplyr)
- inner_join(df, mdf)
- #Joining by: c("car_1", "car_2")
- # car_1 car_2 mpg cyl disp
- #1 Datsun 710 Ford Pantera L 22.8 4 108
- #2 Hornet 4 Drive Ferrari Dino 21.4 6 258
- #3 Hornet Sportabout Maserati Bora 18.7 8 360
- #4 Valiant Volvo 142E 18.1 6 225
- df[match(interaction(mdf[c("car_1", "car_2")]), interaction(df[c("car_1", "car_2")])),]
- df[match(paste(mdf$car_1, mdf$car_2), paste(df$car_1, df$car_2),),]
- df[interaction(df[c("car_1", "car_2")]) %in% interaction(mdf[c("car_1", "car_2")]),]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement