在R中的组内按行号绑定数据帧

时间:2018-08-16 21:53:29

标签: r split

我的数据由来自不同文本的单词列表(组变量)组成,我正在尝试将每个组中的数据框按一定数量的行(每2000行)进行装箱。

我的数据如下:

index   text   word
1       H6     mællte
2       H6     fleiru
...
66265   H6     han
1       DG8    Son
2       DG8    hins
3       DG8    var
...
2001    DG8    faer
2002    DG8    hælga

我希望它看起来像这样:

index   text   word     bin
1       H6     mællte   1
2       H6     fleiru   1
...
66265   H6     han      33
1       DG8    Son      1
2       DG8    hins     1
3       DG8    var      1
...
2001    DG8    faer     2
2002    DG8    hælga    2

1 个答案:

答案 0 :(得分:0)

我们可以将repdplyr一起使用:

library(dplyr)

df %>%
  group_by(text) %>%
  mutate(bin = rep(1:ceiling(n()/2000), each = 2000, length.out = n()))

length.out = n()确保如果n()无法将2000整除,则最后一个“ bin”值将仅重复直到每个组的第N行。