首页 > 解决方案 > 多行相同的行,但行的数量不同

问题描述

我有这样的数据:

ID 单词
1 公共汽车
1 到达
1 停止
1 时间
1 胡须
1 大胡子
1
2 同时
2 争论
2 座位
2 时间
2 警察
3
3 散步
3 干预

我想将其转换为如下数据集:

ID 单词
1 到达 公共汽车站 时间 胡子 胡子 坐
2 同时开始争论座位时间
3 官员走干预

是否可以?

谢谢你。

标签: rtextnlp

解决方案


在我的评论中添加一些细节:

library(dplyr)

data <- tibble::tribble(
  ~id,        ~word,
   1L,     "arrive",
   1L,        "bus",
   1L,       "stop",
   1L,       "time",
   1L,      "beard",
   1L,    "bearded",
   1L,       "sits",
   2L,     "whilst",
   2L,      "begin",
   2L,      "argue",
   2L,       "seat",
   2L,       "time",
   2L,     "police",
   3L,    "officer",
   3L,      "walks",
   3L, "intervenes"
  )

data %>% 
  group_by(id) %>% 
  mutate(word = paste0(word, collapse = " ")) %>% 
  slice(1) %>% # Take the first line from each group
  ungroup()

或更好(所以你不需要切片):

data %>% 
  group_by(id) %>% 
  summarise(word = paste0(word, collapse = " "))

推荐阅读