我有一个从10个文档中导入的文本列表,例如:
library(quanteda)
library(readtext)
path <- "the working direction"
doc1 <- readtext(paste0(path, "/*_XXX.docx"))
view(doc1)看起来像
[[1]] character(1)'some words'
[[2]] character(2)"some words">
…
现在,我需要对这个文本列表进行标记,所以我使用
tok_cov1 <- doc1 %>%
tokens(remove_punct = TRUE,
remove_numbers = TRUE,
remove_symbols = TRUE) %>%
tokens_tolower(keep_acronyms = TRUE) %>%
tokens_wordstem() %>%
tokens_remove(pattern = stopwords("en"))
代码没有返回任何错误,但是不会标记任何东西。doc1看起来仍然和未标记的一样。
我知道将'doc1'指定为'doc1[[n]]'将返回相应文本中的令牌,例如,
tok_cov1 <- doc1[[1]] %>%
tokens(remove_punct = TRUE,
remove_numbers = TRUE,
remove_symbols = TRUE) %>%
tokens_tolower(keep_acronyms = TRUE) %>%
tokens_wordstem() %>%
tokens_remove(pattern = stopwords("en"))
然而,我需要它在每个文本上工作,而不是一个接一个地做文本。非常感谢任何帮助。谢谢你。
quantedacorpus()
函数直接作用于readtext()
创建的对象。所以在你的例子中,只需使用:
library(quanteda)
corpus(doc1) %>%
tokens()
添加您首选的标记化选项。