【发布时间】:2017-11-08 10:38:52
【问题描述】:
我有一个这样的数据框:
DF <- data.frame(phrase = c("text 1","this text 2", "text 3"))
我想创建一个列,其中包含数据框中每一行中存在的短语数。分别来自前面的示例 2,3,2
我试过的是这个
library(data.table)
dfN<- setDT(DF)[, c('phrase') :=tstrsplit(phrase, '(?<=[^0-9])', perl=TRUE, type.convert=TRUE)]
但我收到此错误
[.data.table(setDT(DF), , :=(c("phrase"), tstrsplit(短语,: 内部逻辑错误。预先检查(在开始修改 DT 之前)没有捕获分配给因子的 RHS 类型(“列表”) “短语”列。请向数据表帮助报告。 另外:警告信息: 在 [.data.table(setDT(DF), , :=(c("phrase"), tstrsplit(phrase, : 提供 11 项分配给列“短语”的 3 项(8 项未使用)
【问题讨论】:
-
你有几列通过拆分和你分配给一个列,即短语'
-
@akrun 谢谢。我可以为此做些什么?
-
输出不清楚。如果要字数,那么
setDT(DF)[, newcol := str_count(phrase, "\\w+")] -
@akrun 谢谢你,这就是答案。
标签: r