[英]Join two data frames
我有兩個數據框:
customer material Freq
1 1 12 1
2 1 10 1
3 1 8 1
4 1 4 1
5 1 3 1
6 1 2 1
第二個:
material class
1 12 A
2 10 B
3 3 C
4 4 D
5 5 E
6 6 F
現在我想合並兩個數據幀。 我嘗試過:
e <- left_join(A, B, by="material")
但后來我多次使用所有材料。 我怎么解決這個問題?
你可以嘗試:
left_join(A, B %>% distinct(), by="material")
在這里,我假設你在B
有一些重復的值。 使用您提供的數據,代碼運行良好; 我看不到多次提到的任何材料。
試試這個:你可以重新調整。
library(tidyverse)
#df1$material<-as.factor(df1$material)
#df2$material<-as.factor(df2$material)
#df2$class<-as.character(df2$class)
df1 %>%
left_join(df2,by="material")
如果我正確理解了最終結果,那么你可以使用base merge
:
df3 <- merge(df1, df2, by = "material")
您還可以在管道中使用:
df3 <- df1 %>%
merge(df2, by = "material")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.