首页 > 解决方案 > 如何在 R 中创建 dataframeSource?无法创建符合我需要的语料库

问题描述

这里是初学者。我有一个包含 4 列的数据集,基本上是新闻文章,包含名称的列:日期、作者、标题和正文(包含文本)。我想创建一个corpus,但我不明白如何创建 DataframeSource,基本上是我传递的参数。我了解 VectorSource。此后我的目标是做一些基本的文本分析。谢谢!

标签: rtext-miningtm

解决方案


的帮助?DataframeSource指定您需要 2 个名为“doc_id”和“text”的列。否则会失败。

因此,在继续之前,您需要像这样创建一个 data.frame。如果您的情况,数据如下所示:

my_data <- data.frame(date = c(Sys.Date() - 1, Sys.Date()) , 
                      author = c("author1", "author2"),
                      title = c("title_1", "title_2"),
                   body = c("This is text1.", "This is text2."),
                   stringsAsFactors = FALSE)

您现在应该在使用时收到如下错误DataframeSource(mydata)

DataframeSource(my_data) 中的错误:all(!is.na(match(c("doc_id", "text"), names(x)))) 不是 TRUE

要解决此问题,您需要重命名列标题和正文。例如像这样:

index <- match(c("title", "body"), colnames(my_data))
colnames(my_data)[index] <- c("doc_id", "text")

# DataframeSource now works  
ds <- DataframeSource(my_data)

推荐阅读