如何用r语言实现对已经分好的词作词频统计

Python015

如何用r语言实现对已经分好的词作词频统计,第1张

如果你已经做过分词了,那么一篇文章在R里面呈现的结构应该是一个vector,你只需要使用table这个函数就可以对所有词语出来的频数进行统计,然后根据你的关键词提取对应部分就可以了啊。

数据准备

频数表是数理统计中由于所观测的数据较多,为简化计算,将这些数据按等间隔分组,然后按选举唱票法数出落在每个组内观测值的个数,称为(组)频数。这样得到的表称“频数表”或“频数分布表”。

列联表(contingency table)是观测数据按两个或更多属性(定性变量)分类时所列出的频数表。它是由两个以上的变量进行交叉分类的频数分布表。列联表可以告诉你组成表格的各种变量组合的频数或比例。列联表分析的基本问题是:观察各属性之间是否独立,做简单的描述性统计。

按两个变量交叉分类的,该列联表称为两维列联表;若按3个变量交叉分类,所得的列联表称为3维列联表,依次类推。一维列联表就是频数分布表。频数就是各个分组中属性出现的次数。

1.一维列联表

2.二维列联表

table(A, B)

其中,A是行变量,B是列变量。

xtabs(~ A + B, data = mydata)

其中的mydata是一个矩阵或数据框。总的来说,要进行交叉分类的变量应出现在公式的右侧(即~符号的右方),以+作为分隔符。

gmodels包CrossTable()

3.多维列联表

参考资料:

第一个用table(), 会把所有user的频数显示出来

table(testing$user)

第二个就取交集算个数吧。

如果只看user == 2中,item也相同的个数,那么

testuser <- testing[testing$user == 2, ]

trainuser <- trainuser[training$user == 2, ]

length(intersect(testuser, trainuser))