如何通过 R 中的用户定义语句过滤元数据?

How to filter meta data by user-defined statements in R?

R 中有一个名为sFilter 的函数可以过滤元数据。但是,the function 是一个旧的(版本:0.5-10)tm 包。新版本有什么功能可以代替吗?

我的代码块是;

query <- "LEWISSPLIT == 'TRAIN'"
trainData <- tm_filter(Corpus, FUN = sFilter, query)

这意味着,获取在其 LEWISSPLIT 属性中具有 "TRAIN" 值的文档。

<REUTERS TOPICS=?? LEWISSPLIT=?? CGISPLIT=?? OLDID=?? NEWID=??>

自己编写过滤函数即可:

trainData <- tm_filter(Corpus, FUN = function(x, qry) any(meta(x)["lewissplit"] == qry), "TRAIN")

改编自example(tm_filter)。有一个示例使用 grep() 进行更灵活的搜索。