R粘贴属于同一id的数据帧行

时间:2015-11-19 20:17:13

标签: r paste

我正在尝试将来自当前按名称组织在不同行中的同一用户的文本数据粘贴在一起:

df <- read.table(header = TRUE, text = 'name text
"katy" "tomorrow I go"
"lauren" "and computing"
"katy" "to the store"
"stephanie" "foo and foos"')

得到的结果是:

df2 <- read.table(header=TRUE, text='name text
"katy" "tomorrow I go to the store"
"lauren" "and computing"
"stephanie" "foo and foos"')

建议?

1 个答案:

答案 0 :(得分:5)

我们可以使用“{1}”或data.tabledplyraggregate按“名称”分组的“文本”列。使用paste,我们会在执行此操作之前将'data.frame'转换为'data.table'(data.table)。

setDT(df)

使用library(data.table) setDT(df)[, list(text=paste(text, collapse=' ')), by = name]

dplyr

library(dplyr) df %>% group_by(name) %>% summarise(text=paste(text, collapse=' '))

base R