如果满足两个条件,则从 Quanteda 语料库中删除文档
Drop documents from corpus in Quanteda if two conditions are met
corpus_subset
指定应该保留的文件,但是指定要删除的文件呢?例如,假设我想删除出现术语 "terorrism" 的文档,只要该术语出现在 2001 年之前。
dfm_terror <- dfm(data_corpus_inaugural, select = "terrorism", valuetype = c("fixed"))
docvars(data_corpus_inaugural, "Terrorism") <- dfm_terror
documents_to_remove <- corpus_subset(data_corpus_inaugural, Terrorism >= 1 & Year < 2001)
corpus_subset
按照您正确描述的方式保留子集中指定的文档。所以 Terrorism >= 1 & Year < 2001 将 return 下面的文档。
Year President FirstName Terrorism
1981-Reagan 1981 Reagan Ronald 1
但要得到相反的结果,只需取反子集 selection。这将 select 除上面列出的文档之外的所有文档。
corpus_subset(data_corpus_inaugural, !(Terrorism >= 1 & Year < 2001))
corpus_subset
指定应该保留的文件,但是指定要删除的文件呢?例如,假设我想删除出现术语 "terorrism" 的文档,只要该术语出现在 2001 年之前。
dfm_terror <- dfm(data_corpus_inaugural, select = "terrorism", valuetype = c("fixed"))
docvars(data_corpus_inaugural, "Terrorism") <- dfm_terror
documents_to_remove <- corpus_subset(data_corpus_inaugural, Terrorism >= 1 & Year < 2001)
corpus_subset
按照您正确描述的方式保留子集中指定的文档。所以 Terrorism >= 1 & Year < 2001 将 return 下面的文档。
Year President FirstName Terrorism
1981-Reagan 1981 Reagan Ronald 1
但要得到相反的结果,只需取反子集 selection。这将 select 除上面列出的文档之外的所有文档。
corpus_subset(data_corpus_inaugural, !(Terrorism >= 1 & Year < 2001))