I have rows with grouping variables and text. I want to use data.table to paste the text when grouping variables are all the same for n times in a row.
Here's what I have:
x y z
1: Pre A Lorem ipsum dolor sit amet, ac
2: Pre C Maecenas netus in, lacus fames
3: Pre C Conubia sed nulla dolor dui ap
4: Pre A Eget laoreet eros in aliquet e
5: Pre A Vestibulum quisque himenaeos p
6: Post A Sed venenatis. Ante turpis ege
7: Post A Ultricies ultricies eleifend m
8: Post B Conubia in in sed etiam nec mo
9: Post A Quam nec ex sodales dictum orc
10: Post A Sed ante id pulvinar maximus s
Desired output:
x y z
1 Pre A Lorem ipsum dolor sit amet, ac
2 Pre C Maecenas netus in, lacus fames Conubia sed nulla dolor dui ap
3 Pre A Eget laoreet eros in aliquet e Vestibulum quisque himenaeos p
4 Post A Sed venenatis. Ante turpis ege Ultricies ultricies eleifend m
5 Post B Conubia in in sed etiam nec mo
6 Post A Quam nec ex sodales dictum orc Sed ante id pulvinar maximus s
MWE:
library(data.table)
library(stringi)
set.seed(12)
dat <- data.frame(
x = rep(c("Pre", "Post"), each=5),
y = sample(LETTERS[1:3], 10, TRUE),
z = substring(stri_rand_lipsum(10), 1, 30), stringsAsFactors = FALSE
)
setDT(dat)