假设我有一个数据帧,它看起来像这样。
类别|文本
:-:|:-:
| First |我是Groot。|
| First |我们是Groot。|
| Second |黑暗骑士崛起。|
| Second |我是蝙蝠侠。|
但我们希望将列文本中的行合并到一行中,并使其看起来像这样。
类别|文本
-|
| First |我是Groot。我们是格鲁特。|
| Second |黑暗骑士崛起。我是蝙蝠侠。|
我该怎么做?
发布于 2021-10-24 18:44:35
data.table解决方案:
library(data.table)
dt0 <- data.table(
Category = c(rep("First", 2), rep("Second", 2)),
Text = c("I am Groot.", "We are Groot.", "The Dark Knight Rises.", "I am Batman.")
)
dt <- dt0[, .(Text = paste0(Text, collapse = " ")), by = .(Category)]
dt说明:paste0采用列Text (在data.table语法中,该列的计算结果为dt$Text)并将其折叠为单个值。此计算是针对由by = .(Category)指示的Category中的每个唯一值执行的。
https://stackoverflow.com/questions/69697044
复制相似问题