首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R:将类型"List“转换为dataframe以转换为excel - Text Mining

R:将类型"List“转换为dataframe以转换为excel - Text Mining
EN

Stack Overflow用户
提问于 2020-09-21 17:09:45
回答 1查看 68关注 0票数 0

当尝试对我的评论列表进行词干和标记化时,它会自动将其变成一个列表。它最初是一个“字符”类型的变量,但当应用以下代码时,它会将其转换为一个“列表”:

代码语言:javascript
复制
reviews <- tokenize_word_stems(reviews)

我想最终将其转换为excel,但我的write_xlsx函数只能转换数据帧,而不能转换列表。

我的其余代码看起来是这样的,但当试图阻止单词时,它会出现“错误”:

代码语言:javascript
复制
reviews <- readLines("Reviewlist.csv")
reviews <- gsub(pattern = "\\W", replace = " ", reviews)
reviews <- tolower(reviews)
reviews <- gsub(pattern="\\b[A-z]\\b{1}", replace=" ", reviews)
reviews <- stripWhitespace(reviews)
reviews <- removeWords(reviews, stopwords())
reviews <- tokenize_word_stems(reviews)

文件:

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2020-09-21 18:17:05

在这里创建一个lorem-ipsum虚拟输入,基于我对您的"Reviewlist.csv“看起来是什么样子的假设。

代码语言:javascript
复制
library(dplyr)
library(stringi)

stri_rand_lipsum(5) %>%
  writeLines("Reviewlist.csv")

然后,这里只是您的原始代码,没有改动,但使用dplyr语法并显式地说明了所需的库:

代码语言:javascript
复制
library(tm)
library(tokenizers)

reviews <- readLines("Reviewlist.csv") %>%
  gsub(pattern = "\\W", replace = " ", .) %>%
  tolower() %>%
  gsub(pattern="\\b[A-z]\\b{1}", replace=" ", .) %>%
  stripWhitespace() %>%
  removeWords(stopwords()) %>%
  tokenize_word_stems()

现在,您可以做的是将列表项绑定到dataframe中,然后才能将其编写为xlsx-file:

代码语言:javascript
复制
library(purrr)
library(writexl)

reviews_df <- reviews %>%
    map_dfr(~ setNames(., sprintf("word_%04d", seq_along(.))))

reviews_df %>%
  write_xlsx("Reviewlist.xlsx")

这可能会为您创建一个非常宽的xlsx。

不知道Excel是否真的能够打开它,但这就对了:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63989274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档