【发布时间】:2015-01-19 16:33:59
【问题描述】:
我找不到任何以前发布过的问题,所以也许你可以帮忙。
什么是基于元数据聚合 tm 语料库中数据的好方法(例如聚合不同作者的文本)?
至少有两种明显的方法可以做到:
- tm 中的一个内置函数,允许在元数据特征上构建 DocumentTermMatrix。很遗憾,我无法发现这一点。
- 一种基于表格中的一些外部元数据在语料库中连接文档的方法。它只会使用元数据来替换文档 ID。
因此您将拥有一个包含:DocumentId、AuthorName 的表
还有一个 tm 构建的语料库,其中包含大量文档。我知道将表格作为语料库对象的元数据引入并不难。
可以使用以下函数构建矩阵。
library(tm) # version 0.6, you seem to be using an older version
corpus <-Corpus(DirSource("/directory-with-texts"),
readerControl = list(language="lat"))
metadata <- data.frame(DocID, Author)
#A very crude way to enter metadata into the corpus (assumes the same sequence):
for (i in 1:length(corpus)) {
attr(corpus[[i]], "Author") <- metadata$Author[i]
}
a_documenttermmatrix_by_DocId <-DocumentTermMatrix(corpus)
您将如何构建一个矩阵来显示每个作者可能聚合多个文档而不是文档的频率?在这个阶段这样做会很有用,而不是在只有几个术语的后处理中。
a_documenttermmatrix_by_Author <- ?
非常感谢!
【问题讨论】:
标签: r metadata aggregate tm word-frequency