使用 R 和 cSplit() 将文本拆分为单词

Splitting text to words with R and cSplit()

我正在尝试将一系列句子拆分成单独的词,即对文本进行标记。

我找到了一个 R 包 splitstackshape,它可以做我想做的事,几乎...它将输出截断到第一行和最后 5 行。

无论如何,这就是我需要做的:

id text
1 Lorem ipsum dolor sit amet
2 consectetur adipiscing elit
3 Donec euismod enim quis 
4 nunc fringilla sodales
5 Etiam tempor ligula vitae 
6 pellentesque dictum
7 Quisque non justo scelerisque 
8 est facilisis congue quis vel
9 Phasellus ex lorem
10 eleifend at magna vel
11 egestas eleifend massa

输出:

id word
1 Lorem
1 ipsum
1 dolor
1 sit
1 amet
2 consectetur
2 adipiscing
...

也就是说,我需要单独的行中的单词,但要在其所属句子的 ID 旁边。

我正在尝试 cSplit(data, "text", " ", "long"),但它被截断了..


更新。仅供参考, 是如何做相反的事情

cSplit函数returns一个data.table

您所描述的是 data.table 的默认打印行为。要查看实际效果,请尝试以下操作:

library(data.table)
as.data.table(airquality)
print(as.data.table(airquality))

print(as.data.table(airquality), nrows = Inf)

因此,要获得完整的 table 显示,您可以尝试:

library(splitstackshape)
print(cSplit(data, "text", " ", "long"), nrows = Inf)