我有两个数据框:
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")
但是我所有的材料都多次出现了。我该如何解决这个问题?
答案 0 :(得分:1)
您可以尝试:
SCSSStyleSheet:*scss
在这里我假设您在left_join(A, B %>% distinct(), by="material")
中有一些重复的值。使用您提供的数据,代码可以正常运行;我看不到多次提到的任何材料。
答案 1 :(得分:1)
尝试一下:您可以重新分类。
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")
答案 2 :(得分:1)
如果我正确理解最终结果,则可以使用基础merge
:
df3 <- merge(df1, df2, by = "material")
您还可以在带有:的管道中使用
df3 <- df1 %>%
merge(df2, by = "material")