r - 报告语料库文档中的平均字符数
问题描述
所以我有一个语料库设置读取一堆带有段落的文本文件。
library('tm')
my.text.location <- "C:/Users//.../*/"
apapers <- VCorpus(DirSource(my.text.location))
现在我需要找到每个文本中字符的平均值。运行 a
mean(nchar(apapers), na.rm =T)
会导致非常奇怪的输出,超过字符数。有什么其他的方法来获得平均值吗?
解决方案
您没有提供可重现的示例,但rowMeans(sapply(apapers, nchar))
将返回所有文档的平均字符数。“内容”是您需要的列。
更长的版本是在语料库上运行 sapply,计算每个文档的数量。转置这些数据并将其转换为 data.frame。data.frame 将包含两列,内容和元。内容是您需要的。取内容列的平均值将为您提供文档中的平均字符数。这样做的好处是您有表格,以防您需要报告数字。
# your code
my_count <- data.frame(t(sapply(apapers, nchar)))
mean(my_count$content)
使用原始数据集的可重现示例:
library(tm)
data("crude")
crude <- as.VCorpus(crude)
# in one statement
rowMeans(sapply(crude, nchar))
content meta
1220.30 453.15
# longer version keeping intermediate results.
my_count <- data.frame(t(sapply(crude, nchar)))
mean(my_count$content)
[1] 1220.3
my_count
content meta
127 527 440
144 2634 458
191 330 444
194 394 441
211 552 441
236 2774 455
237 2747 477
242 930 453
246 2115 440
248 2066 466
273 2241 458
349 593 492
352 621 468
353 591 445
368 629 440
489 876 445
502 1166 446
543 463 447
704 1797 456
708 360 451
推荐阅读
- python - 如何为 Selenium (Python) 中的下拉列表指定正确的 xpath / css 选择器
- javascript - Apache Echarts 和 Vue-ECharts - 饼图动画在加载时不起作用
- ios - pod AF Networking text/html ContentTypes 问题
- azure - 将保存的 KQL 查询从 ARM 模板导入 Azure Log Analytics
- c# - 在 LINQ 查询中使用表达式
- mysql - MySQL - 如何使用 SUM() 并排除 = 0 的 SUM() 结果
- javafx - Java Fx 将 IntegerProperties 数组绑定到多个列
- c++ - std::async 与线程
- sql - 在 Bigquery 中使用 Date_Diff 为用户创建保留标志
- qt-designer - 如何在 Qt QLabel 上防止剪辑?