【问题标题】:Concatenating rows based on id name [duplicate]基于ID名称连接行[重复]
【发布时间】:2016-11-21 21:19:00
【问题描述】:

我有一个数据集,我想通过特定 id 连接行

 id <- c(1,1,1,2,2,2,2)
 location<- c("Mumbai", "Newyork", "Jaipur", "Paris", "London", "Kentucky", "Dublin") 
df <- data.frame(id, location)

id   location 
1    Mumbai
1    Newyork
1    Jaipur
2    Paris
2    London
2    Kentucky
2    Dublin

 paste(location, collapse="")

我想为每个 id 创建一个名为 path 的列,它根据 id 连接行以获得“Mumbai-Newyork-Jaipur”和“Paris-London-Kentucky-Dublin”。有什么想法吗?

【问题讨论】:

    标签: r dplyr paste tidyr


    【解决方案1】:
    id <- c(1,1,1,2,2,2,2)
    location<- c("Mumbai", "Newyork", "Jaipur", "Paris", "London", "Kentucky", "Dublin") 
    df <- data.frame(id, location)
    
    library(dplyr)
    
    df %>%
      group_by(id) %>%
      mutate(path = paste(location, collapse = "-"))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多