使用TM包处理语料库后,unlist提取content返回NA问题求助
解决TM语料库转data.frame时返回NA的问题
我太懂你这种头疼的感觉了——好不容易把语料库整理好,转成data.frame结果全是NA,白忙活半天。问题出在你提取内容的方式上:TM包的文档对象(比如PlainTextDocument)不是普通的列表结构,直接用'['去取"content"键根本拿不到正确内容,得用TM专门提供的content()函数来提取每个文档的文本。
试试把代码改成这样:
# 修正后的转换代码 twitCln <- data.frame(text = unlist(sapply(twit, content)), stringsAsFactors = FALSE)
要是担心sapply的行为不稳定,也可以用更明确的lapply写法:
twitCln <- data.frame( text = unlist(lapply(twit, function(doc) content(doc))), stringsAsFactors = FALSE )
执行完之后你再查看twitCln,应该就能看到那两条有效文本了。要是你不确定语料库的结构,还可以用str(twit[[1]])看看,能清楚看到文档内容是需要通过content()方法来访问的,而不是直接作为列表元素存在~
内容的提问来源于stack exchange,提问作者VPMACH
相关产品推荐
相关产品推荐

