2017-02-16 15 views
0

У меня проблема с перемещением от объекта tm к объекту koRpus. Я должен нормализовать корпус с помощью инструментов tm, lemmatize результаты с помощью koRpus и вернуться к tm, чтобы классифицировать результаты. Чтобы сделать это, я должен преобразовать объект tm в R-фрейм данных, который затем преобразовываю в файл excel, затем в txt-файл и, наконец, в объект koRpus. Это код:Перемещение с объекта tm на объект koRpus и наоборот

#from VCORPUS to DATAFRAME 
dataframeD610P<-data.frame(text=unlist(sapply(Corpus.TotPOS, `[`, "content")), stringsAsFactors=F) 

#from DATAFRAME to XLSX 
#library(xlsx) 
write.xlsx(dataframeD610P$text, ".\\mycorpus.xlsx") 

#open with excel 
#save in csv (UTF-8) 

#import in KORPUS and lemmatization with KORPUS/TREETAGGER 

tagged.results <- treetag(".\\mycorpus.csv", treetagger="manual", lang="it", sentc.end = c(".", "!", "?", ";", ":"), 
          TT.options=list(path="C:/TreeTagger", preset="it-utf8", no.unknown=T)) 

Тогда мне нужно сделать все это в обратном направлении, чтобы вернуться к тм. Это код:

#from KORPUS to TXT 
write.table([email protected]$lemma, ".\\mycorpusLEMMATIZED.txt") 

#open with a text editor and formatting of the text 

#from TXT to R 
Lemma1.POS<- readLines(".\\mycorpusLEMMATIZEDfrasi.txt", encoding = "UTF-8") 

#from R object to DATAFRAME 
Lemma2.POS<-as.data.frame(Lemma1.POS, encoding = "UTF-8") 

#from DATAFRAME to CORPUS 
CorpusPOSlemmaFINAL = Corpus(VectorSource(Lemma2.POS$Lemma1.POS)) 

Есть ли более элегантное решение, чтобы сделать это, не выходя из R? Я бы очень признателен за любую помощь или отзывы.

Кстати, кто-нибудь знает, как спросить tm, какой документ внутри VCorpus содержит определенный токен? Я обычно преобразовываю корпус в кадр данных, чтобы идентифицировать документ. Есть ли способ сделать это в tm?

ответ