2016-06-30 6 views
1

У меня возникли проблемы с пакетом STM в R. Я создал корпус в Quanteda, и я хочу преобразовать его в формат STM. Я сохранил метаданные как независимый файл CSV, и мне нужен код, который объединяет текстовые документы с метаданными. ReadCorpus() и «новообращенный() функция не автоматически добавлять метаданные информации к сводуДобавление метаданных в STM в R

Это то, что он выглядит в Quanteda:.

EUdocvars <- read.csv("EU_metadata.csv", stringsAsFactors = FALSE) 

EUdocvars$Period <- as.factor(EUdocvars$Period) 
EUdocvars$Country <-as.factor(EUdocvars$Country) 
EUdocvars$Region <- as.factor(EUdocvars$Region) 

EUCorpus <- corpus(textfile(file='PROJECT/*.txt'), encodingFrom = "UTF-8-BOM") 
docvars(EUCorpus) <- EUdocvars 

EUDfm <- dfm(EUCorpus) 

Есть ли способ сделать то же самое с использованием пакета STM

ответ

0

stm объекта (список) есть элемент, называемый $meta который принимает dataframe размеров number of documents x number of covariates Так что для вашей проблемы:?.

EUCorpus$meta <- EUdocvars 
+0

Эй, спасибо, за ответ. У меня все еще есть проблемы. Не могли бы вы рассказать мне, как вы собираетесь создавать корпус, используя мои данные и метаданные, которые «готовы» выполнять STM с помощью пакета. Спасибо – Ricardo

2

Поддержка была добавлена ​​совсем недавно (v0.99), после адресации https://github.com/kbenoit/quanteda/issues/209.

Так это должно работать:

EUstm <- convert(EUdfm, to = "stm", docvars = docvars(EUCorpus)) 

И тогда EUstm имеет все элементы, в том числе meta, что вам нужно для установки модели STM.

+0

Большое спасибо. У меня есть еще один вопрос. Оттуда, какой был бы лучший способ создать модель STM? Я спрашиваю об этом, потому что вывод теперь является TDM, и некоторые из них должны извлечь его в формат, который можно читать как «stm (документы, vocab, K, распространение)» – Ricardo

+0

'stm (документы EUdfm $, EUdfm $ vocab, K, EUdfm $). –

+0

Благодарим вас за ответ! Я пробовал это, но придумал Ошибка в stm (EUstm $ documents, EUstm $ vocab, K, EUstm $): Индексы Word не являются целыми положительными – Ricardo