Недавно я пытался найти частоту слов в одном столбце в data.frame
в R, используя пакет tm
. Хотя сам data.frame
имеет много столбцов, основанных как на числах, так и на символах, меня интересует только один столбец, представляющий собой чистый текст. Хотя у меня не было проблем с очисткой самого текста, как только я пытаюсь подтянуть частоту слов с помощью команды findFreqTerms()
, я получаю следующую ошибку:
Error: inherits(x, c("DocumentTermMatrix", "TermDocumentMatrix")) is not TRUE
Я понял это, чтобы сказать, что мне нужно преобразовать мои данные либо в DocumentTermMatrix
, либо в TermDocumentMatrix
, однако, поскольку у меня есть только один столбец, с которым я работаю, я также не могу его создать. Ошибка ниже:
> Test <- DocumentTermMatrix(Types)
Error in UseMethod("TermDocumentMatrix", x) :
no applicable method for 'TermDocumentMatrix' applied to an object of class "c('PlainTextDocument', 'TextDocument')"
Есть ли способ получить подсчет частоты из одного столбца? Я вставил свой полный код ниже с объяснениями для каждого шага, который я предпринял. Я ценю любую помощь, которую вы все можете мне оказать.
> # extracting the single column I wish to analyse from the data frame
Types <-Expenses$Types
> # lower all cases
Types <- tolower(Types)
> # remove punctuation
Types <- removePunctuation(Types)
> # remove numbers
Types <- removeNumbers(Types)
> # attempting to find word frequency
findFreqTerms(Types)
Error: inherits(x, c("DocumentTermMatrix", "TermDocumentMatrix")) is not TRUE