如何根据元数据过滤 R 中 tm 语料库中的文档?
How to filter documents in a tm corpus in R based on metadata?
我正在使用 R tm 包,我正在尝试 select 某些文档的索引和元数据:
orbit_corpus<-Corpus( tm_corpus, readerControl = list(reader=myReader))
meta(my_corpus[[1]])
author : a8
origin : Department
heading : WhiB
id : 1
year : 2013
我想找到我的语料库中 2013 年发布的前一百个文档中的所有文档。
这用于确定文档 1 的元数据 'year' 是否为 2013 年。
meta(my_corpus[[1]],"year") == 2013
[1] TRUE
我需要一些东西,让我可以选择在前 100 个所有索引中找到符合条件的索引。
我会想象类似的东西(但它不起作用,不幸的是也可能不会生成文档列表)。
meta(orbit_corpus[[1:100]],"year") == 2013
Error in x$content[[i]] : recursive indexing failed at level 4
非常感谢您的帮助!
您可以对语料库的前 100 个文档使用 tm_filter
(orbit_corpus[1:100]
)
tm_filter(orbit_corpus[1:100], FUN = function(x) meta(x)[["year"]] == "2013")
来自文档
tm_filter
returns a corpus containing documents where FUN
matches
我正在使用 R tm 包,我正在尝试 select 某些文档的索引和元数据:
orbit_corpus<-Corpus( tm_corpus, readerControl = list(reader=myReader))
meta(my_corpus[[1]])
author : a8
origin : Department
heading : WhiB
id : 1
year : 2013
我想找到我的语料库中 2013 年发布的前一百个文档中的所有文档。 这用于确定文档 1 的元数据 'year' 是否为 2013 年。
meta(my_corpus[[1]],"year") == 2013
[1] TRUE
我需要一些东西,让我可以选择在前 100 个所有索引中找到符合条件的索引。 我会想象类似的东西(但它不起作用,不幸的是也可能不会生成文档列表)。
meta(orbit_corpus[[1:100]],"year") == 2013
Error in x$content[[i]] : recursive indexing failed at level 4
非常感谢您的帮助!
您可以对语料库的前 100 个文档使用 tm_filter
(orbit_corpus[1:100]
)
tm_filter(orbit_corpus[1:100], FUN = function(x) meta(x)[["year"]] == "2013")
来自文档
tm_filter
returns a corpus containing documents whereFUN
matches