2014-09-26 3 views
2

내 데이터를 txt 파일이며 다음과 같습니다
overwiew 1
클라이언트 1
저장 한
마지 1
가격이
재고 2 개
경제 2
단어 number_docstemDocument R 텍스트 마이닝

문서의 번호가 정렬됩니다 (가장 작은 것부터 가장 큰 것까지). 이제는 각 문서에 대해 문서에 속한 모든 단어를 원합니다. 이제 그들은 컬럼에 서 있지만, 나는 그 패키지의 일부 기능을 위해 필요하기 때문에 textdocument에있는 모든 단어를 원한다. 나는 이것을 다음과 같이했다 :

data <- read.table("poging.txt", header = TRUE) 
data 

doc <- c() 
#I paste all the words from a document together: 
doc[1] <- paste(data[1:4,1], collapse = ' ') 
doc[2] <- paste(data[1:4,1], collapse = ' ') 

#Make a data.frame of it 
doc_df <- data.frame(docs = doc, row.names = 1:2) 

#Install package 
install.packages("tm") 
library(tm) 

#Make a Dataframesource of it so that each row is seen as a document 
ds <- DataframeSource(doc_df) 
inspect(VCorpus(ds)) 

#Now I want to stem for example document number 1 
stemDocument(ds[[1]]) 

그러나 인수로 ds[[1]]을 사용하면 작동하지 않는다. 그는 문서 번호 1을 찾을 수 없습니다. 누군가 나를 도울 수 있습니까?

예에서 패키지 tm은 데이터 crude을 사용합니다. 내 데이터는 crude의 형식과 동일합니다. 실케

+1

샘플 입력 및 원하는 출력으로 [재현 가능한 예] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)를 만드십시오. 문제를 재현하기 위해 코드를 R에 복사/붙여 넣기 할 수 있다면 더 쉽게 도움을받을 수 있습니다. – MrFlick

+0

지금은 단 2 개의 문서로보다 간단한 사례를 만들었지 만 문제는 여전히 동일합니다. 당신이 나를 도울 수 있기를 바랍니다! – Anita

+0

"poging.txt"가 필요하기 때문에 코드를 실행할 수 없습니다. 도움이되기 위해서는 최소한의 재현 가능한 예가 포함되어야합니다. – MrFlick

답변

0

stemDocument()

는 TextDocument가 아닌 데이터 소스와 함께 사용하기위한 것입니다. DataSource를 사용하여 코퍼스를 만들고 싶다면 거기에서 문서를 추출 할 수 있습니다. stemDocument 새 문서를 반환하고 영구적으로 신체를 업데이트하지 않습니다

ds <- DataframeSource(doc_df) 
corpus <- VCorpus(ds) 
stemDocument(corpus[[1]]) 

참고. 따라서 출력물에 대해 아무 것도하지 않으려면 어딘가에 저장해야합니다.

관련 문제