样本数据
sessionid qf Office
12 3 LON1,LON2,LON1,SEA2,SEA3,SEA3,SEA3
12 4 DEL2,DEL1,LON1,DEL1
13 5 MAn1,LON1,DEL1,LON1
在这里,我想按行删除“ OFFICE”列中的重复值。
预期产量
sessionid qf Office
12 3 LON1,LON2,SEA2,SEA3
12 4 DEL2,DEL1,LON1
13 5 MAN1,LON1,DEL1
最佳答案
我们可以使用tidyverse
。用反引号将'Office'分割开并扩展为'long'格式,然后获取distinct
行,并按'sessionid'和'qf'分组,paste
'Office'的内容
library(tidyverse)
separate_rows(df1, Office) %>%
distinct() %>%
group_by(sessionid, qf) %>%
summarise(Office = toString(Office))
# A tibble: 3 x 3
# Groups: sessionid [?]
# sessionid qf Office
# <int> <int> <chr>
#1 12 3 LON1, LON2, SEA2, SEA3
#2 12 4 DEL2, DEL1, LON1
#3 13 5 MAn1, LON1, DEL1
关于r - 如何在R中一次删除单个列中多个列的重复值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46568280/