Я сделал wordcloud, используя файл csv в R. Я использовал метод TermDocumentMatrix
в пакете tm
. Вот мой код:как читать и писать TermDocumentMatrix в r?
csvData <- read.csv("word", encoding = "UTF-8", stringsAsFactors = FALSE)
Encoding(csvData$content) <- "UTF-8"
# useSejongDic() - KoNLP package
nouns <- sapply(csvData$content, extractNoun, USE.NAMES = F)
#create Corpus
myCorpus <- Corpus(VectorSource(nouns))
myCorpus <- tm_map(myCorpus, removePunctuation)
# remove numbers
myCorpus <- tm_map(myCorpus, removeNumbers)
#remove StopWord
myCorpus <- tm_map(myCorpus, removeWords, myStopwords)
#create Matrix
TDM <- TermDocumentMatrix(myCorpus, control = list(wordLengths=c(2,5)))
m <- as.matrix(TDM)
Этот процесс, казалось, занимал слишком много времени. Я думаю, что extractNoun
- это то, что требует слишком много времени. Чтобы сделать код более эффективным с точки зрения времени, я хочу сохранить полученный TDM в виде файла. Когда я прочитаю этот сохраненный файл, могу ли я полностью использовать m <- as.matrix(saved TDM file)
? Или, есть ли лучшая альтернатива?
Спасибо за ваш ответ! Это сработало !!! Удачного дня ~ –
Не могли бы вы ответить на еще один вопрос? Если вы не возражаете. Я использую 'parallel', как вы сказали. Но это, казалось, привело к огромной утечке памяти. Поэтому я использую 'gc()' временную меру. У вас когда-либо был этот опыт? Если да, есть ли способ? –
Я этого не видел. Это зависит от системы. Если вы используете окна, возможно, 'cl <-makeCluster (no_cores, type =" FORK ")', но я не использовал Windows с XP – pachamaltese