加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

无法将语料库转换为R中的数据框架

发布时间:2020-12-14 18:51:29 所属栏目:资源 来源:网络整理
导读:我已经看过这里发布的其他类似问题(如 this),但问题仍然存在. 我有一个文本数据的数据框,我需要阻止它.因此,我将其转换为语料库,然后将其转换为词干,然后完成词干中的单词,然后尝试将文本数据框作为输出. myCorpus - Corpus(VectorSource(textDf$text))myCor
我已经看过这里发布的其他类似问题(如 this),但问题仍然存在.

我有一个文本数据的数据框,我需要阻止它.因此,我将其转换为语料库,然后将其转换为词干,然后完成词干中的单词,然后尝试将文本数据框作为输出.

myCorpus <- Corpus(VectorSource(textDf$text))
myCorpus <- tm_map(myCorpus,removeWords,stopwords('english'))
myCorpus <- tm_map(myCorpus,content_transformer(tolower))
myCorpus <- tm_map(myCorpus,removePunctuation)
dictCorpus <- myCorpus
myCorpus <- tm_map(myCorpus,stemDocument)
myCorpus <- tm_map(myCorpus,stemCompletion,dictionary=dictCorpus)

现在我正试图从这个语料库中获取一个数据帧,所以我尝试了以下命令.

dataframe< -data.frame(text = unlist(sapply(myCorpus,'[',“content”)),
stringsAsFactors = F)

dataframe< -data.frame(text = unlist(sapply(myCorpus,[)),stringsAsFactors = F) 并且

dataframe <- 
    data.frame(id=sapply(corpus,meta,"id"),text=unlist(lapply(sapply(corpus,"content"),paste,collapse="n")),stringsAsFactors=FALSE)

从this链接

所有这些都会产生以下错误:

Error in UseMethod("meta",x) : 
  no applicable method for 'meta' applied to an object of class "character"

任何帮助将不胜感激.

解决方法

这应该这样做:
data.frame(text = sapply(myCorpus,as.character),stringsAsFactors = FALSE)

用工作解决方案编辑,以原油为例

这里的问题是你不能将stemCompletion应用为转换.

getTransformations()
## [1] "removeNumbers"     "removePunctuation" "removeWords"       "stemDocument"      "stripWhitespace"

不包括stemCompletion,它将带有标记的标记的向量作为输入.

所以这应该这样做:首先提取转换后的文本并标记它们,然后完成词干,然后粘贴在一起.在这里,我使用内置的粗语料库说明了解决方案.

data(crude)
myCorpus <- crude 
myCorpus <- tm_map(myCorpus,stemDocument)
# tokenize the corpus
myCorpusTokenized <- lapply(myCorpus,scan_tokenizer)
# stem complete each token vector
myTokensStemCompleted <- lapply(myCorpusTokenized,dictCorpus)
# concatenate tokens by document,create data frame
myDf <- data.frame(text = sapply(myTokensStemCompleted,collapse = " "),stringsAsFactors = FALSE)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读