Как Wordcloud большой объем данных? - PullRequest
0 голосов
/ 03 декабря 2018

Я новичок в R, и у меня есть большие данные с 81k наблюдений.Если я попытаюсь:

titles_matrix <- as.matrix(titulos_tdm)

Я получу

Error: cannot allocate vector of size 40.8 Gb

Я также попытался с big.matrix, и получил аналогичную ошибку.Если я попытаюсь прямо из корпуса:

wordcloud(clean,max.words = 200,random.color = TRUE,random.order=FALSE)

, я получу

Error in plot.new() : figure margins too large

Каков наилучший способ создать облако большого количества данных?Также попробовал добавить gc(), все равно не получилось.

Полный код:

# imports and libraries

source = VectorSource(perfil.df.publicacoes$titulo)

# Make a volatile corpus
corpus <- VCorpus(source)
clean_corpus <- function(corpus){
  corpus <- tm_map(corpus, stripWhitespace)
  corpus <- tm_map(corpus, removePunctuation)
  corpus <- tm_map(corpus, content_transformer(tolower))
  corpus <- tm_map(corpus, removeWords, stopwords("en"))
  corpus <- tm_map(corpus, removeWords, stopwords("portuguese"))
  return(corpus)
}

clean <- clean_corpus(corpus)

# Convert TDM to matrix
titulos_tdm <- TermDocumentMatrix(clean)

titulos_m <- as.matrix(titulos_tdm)

# Sum rows and frequency data frame
titulos_term_freq <- rowSums(titulos_m)

titulos_word_freqs <- data.frame(
  term = names(titulos_term_freq),
  num = titulos_term_freq
)

wordcloud(titulos_word_freqs$term, titulos_word_freqs$num, max.words = 50, colors = "red")

Как я уже говорил, код падает на titulos_m <- as.matrix(titulos_tdm).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...