Для анализа настроений с помощью тм плагин webmining, я создать TermDocumentMatrix, как показано в примере кода ниже: http://www.inside-r.org/packages/cran/tm/docs/tm_tag_scoreСоздание матрицы термин документа из файла Excel с помощью R
У меня есть CSV-файл с заголовками статей в отдельных строках, в общей сложности 1 столбец и без заголовка. Моя цель состоит в том, чтобы создать матрицу термина документа (или PlainTextDocument, если это возможно), используя строку заголовков в моем .csv файл, но до сих пор я только был в состоянии создать регулярную матрицу:
#READ IN FILE
filevz <- read.csv("headlinesonly.csv")
#make matrix
headvzDTM <- as.matrix(filevz)
#look at dimension of file
dim(filevz)
#[1] 829 1
#contents of DTM
headvzDTM
European.Central.Bank.President.Draghi.News.Conference..Text.
[1,] "Euro Gains Seen as ECB Bank Test Sparks Repatriation: Currencies"
[2,] "Euro-Area Inflation Rate Falls to Four-Year Low"
[3,] "Euro-Area October Economic Confidence Rise Beats Forecast"
[4,] "Europe Breakup Forces Mount as Union Relevance Fades"
[5,] "Cyprus Tops Germany as Bailout Payer, Relatively Speaking"
....//the entire contents are printed, I include the top 5 and last entry here
[829,] "Copper, Metals Plummet as Europe Credit-Rating Cuts Erode Demand Prospects"
я не включил заголовок в файле csv. Это сообщение об ошибке, когда я попытался начать анализ настроений:
pos <- tm_tag_score(TermDocumentMatrix(headvzDTM,
control = list(removePunctuation = TRUE)),
tm_get_tags("Positiv"))
Ошибка в метод UseMethod («TermDocumentMatrix», х): не применяется метод «TermDocumentMatrix» не применяется к объекту класса «с (» matrix ',' character ') "
Есть ли способ создать TermDocumentMatrix с использованием созданной мной матрицы?
я альтернативно пытался создать читатель, чтобы извлечь содержимое файла CSV и поместить его в корпус, но это дало мне ошибку:
//read in csv
read.table("headlinesonly.csv", header=FALSE, sep = ";")
//call the table by a name
headlinevz=read.table("headlinesonly.csv", header=FALSE, sep = ";")
m <- list(Content = "contents")
ds <- DataframeSource(headlinevz)
elem <- getElem(stepNext(ds))
//make myreader
myReader <- readTabular(mapping = m)
//error message
> (headvz <- Corpus(DataframeSource(headlinevz, encoding = "UTF-8"),
+ readerControl = myReader(elem, language = "eng", id = "id1"
+)))
Ошибки в [.default
(Эль $ содержания,, отображение [[п]]): неправильное число измерений
Когда я попробовать другие предложения на этом сайте (например, R text mining documents from CSV file (one row per doc)), я продолжаю имея проблему, не будучи в состоянии сделать анализ настроений на объект класса "data.frame":
hvz <- read.csv("headlinesonly.csv", header=FALSE)
require(tm)
corp <- Corpus(DataframeSource(hvz))
dtm <- DocumentTermMatrix(corp)
pos <- tm_tag_score(TermDocumentMatrix(hvz, control = list(removePunctuation = TRUE)), tm_get_tags("Positiv"))
Error in UseMethod("TermDocumentMatrix", x) : no applicable method for 'TermDocumentMatrix' applied to an object of class "data.frame"
require("tm.plugin.tags")
Loading required package: tm.plugin.tags
sapply(hvz, tm_tag_score, tm_get_tags("Positiv"))
Error in UseMethod("tm_tag_score", x) : no applicable method for 'tm_tag_score' applied to an object of class "factor"
И что происходит, когда вы пытаетесь выполнить шаги здесь: http://stackoverflow.com/a/17999144/1036500? – Ben
Я думаю, вам может быть полезно посмотреть, как другие люди формируют свои вопросы. Ваш вопрос может быть значительно улучшен с помощью тегов кода и воспроизводимого примера. Сейчас очень трудно читать и разбирать, что к чему. –
Спасибо, Бен и Тайлер. Я видел код в ссылке, которую вы опубликовали ранее, и столкнулся с аналогичной проблемой: – user2976990