R:计算列表中单词的出现次数以创建基准

时间:2015-04-20 06:30:02

标签: r

我有包含单词的列表:

$text
$text[[1]]
 [1] "qlikview" "gpa"      "access"   "gpa"      "access"   "access"   "qlikview" "gpa"      "access"  
[10] "gpa"     

$text[[2]]
 [1] "report"   "qlikview" "gpa"      "access"   "qlikview" "gpa"      "access"   "qlikview" "gpa"     
[10] "access"`  

$text[[3]]
 [1] "qlikview" "gpa"      "access"   "gpa"      "access"   "access"   "qlikview" "gpa"      "access"  
[10] "gpa"     

$text[[4]]
 [1] "qlikview" "gpa"      "access"   "gpa"      "access"   "access"   "qlikview" "gpa"      "access"  
[10] "gpa"     

$text[[5]]
 [1] "report"   "qlikview" "gpa"      "access"   "access"   "gpa"      "access"   "qlikview" "gpa"     
[10] "access"   "access"   "gpa"      "qlikview" "gpa"      "access"   "qlikview" "gpa"      "access"

我需要计算每行列表和图中出现的单词数。我尝试过各种各样的方法,但只在句子内有效。请参考this。有过这方面工作的人可以提供帮助!

修改

dput(O)
O <- structure(list(text = list(c("report", "gpa", "access", "access", 
                                  "access", "gpa", "access", "gpa", 
                                  "access"), c("report", "report", 
                                  "access", "report", "report", "data",  
                                  "report", "report"), 
                                c("report", "qlikview", "gpa", "access", 
                                  "access", "qlikview", "gpa", "access", 
                                  "access", "qlikview", "gpa", "access", 
                                  "access", "qlikview", "gpa", "access"), 
                                  character(0),
                                c("gpa", "gpa", "gpa", "gpa", "gpa", 
                                  "gpa", "gpa", "gpa", "gpa", "gpa", 
                                  "gpa", "gpa"), 
                                c("report", "qlikview", "gpa", "access", 
                                  "access", "qlikview", "gpa", "access", 
                                  "qlikview", "gpa", "access", "access", 
                                  "gpa", "qlikview", "gpa", "access"), 
                                c("report", "data", "data"), 
                                c("report", "report", "report", "data", 
                                  "report", "report"))), .Names = "text")

1 个答案:

答案 0 :(得分:2)

尝试

library(qdapTools)
res <- mtabulate(O$text)
dim(res)
#[1] 244   8

head(res,3)
#   access adhoc data gpa maturity pfi qlikview report
#1      4     0    0   4        0   0        2      0
#2      3     0    0   3        0   0        3      1
#3      4     0    0   4        0   0        2      0

基于新的输出输出(在一个小子集上)

res1 <- mtabulate(O$text)
head(res1,3)
#  access data gpa qlikview report
#1      5    0   3        0      1
#2      1    1   0        0      6
#3      7    0   4        4      1