【发布时间】:2018-09-17 07:16:54
【问题描述】:
我正在尝试聚合数据框中的行,这些行具有一些相似和不同的值,如下所示:
dataframe1 <- data.frame(Company_Name = c("KFC", "KFC", "KFC", "McD", "McD"),
Company_ID = c(1, 1, 1, 2, 2),
Company_Phone = c("237389", "-", "-", "237002", "-"),
Employee_Name = c("John", "Mary", "Jane", "Joshua",
"Anne"),
Employee_ID = c(1001, 1002, 1003, 2001, 2002))
我希望将相似值的行合并,并为不同的值创建新列,如下所示:
dataframe2 <- data.frame(Company_Name = c("KFC", "McD"),
Company_ID = c(1, 2),
Company_Phone = c("237389", "237002"),
Employee_Name1 = c("John", "Joshua" ),
Employee_ID1 = c(1001, 2001),
Employee_Name2 = c("Mary", "Anne"),
Employee_ID2 = c(1002, 2002),
Employee_Name3 = c("Jane", "na"),
Employee_ID3 = c(1003, "na"))
我已经检查过类似的问题,例如 Combining duplicated rows in R and adding new column containing IDs of duplicates 和 R: collapse rows and then convert row into a new column,但我不想用逗号分隔值,而是创建新列。
# Company_Name Company_ID Company_Phone Employee_Name1 Employee_ID1 Employee_Name2 Employee_ID2 Employee_Name3 Employee_ID3
#1 KFC 1 237389 John 1001 Mary 1002 Jane 1003
#2 McD 2 237002 Joshua 2001 Anne 2002 na na
提前谢谢你。
【问题讨论】:
-
@R noob 你想合并这两个数据框吗?显示您的预期输出。
-
@SORIFHOSSAINSHUJON 我已经编辑了我的问题以包含输出