2014-03-19 7 views
0

CSV 파일에 용어 문서 행렬이 있습니다. 예를 들어,R의 tm 패키지로 TDM csv 파일을 Term Docment Matrix로 변환하는 방법은 무엇입니까?

 , doc1, doc2, doc3, doc4, doc5 
main , 2, 0, 3, 0, 0 

virtual, 4, 0, 0, 0, 1 

origin , 0, 0, 1, 2, 0 

는 ....

어떻게 TM 패키지 용어 문서 행렬이 변환 할 수 있습니다

?

TermDocumentMatrix()이라는 용어로 문서 행렬을 문서의 문장 (단어 목록)에서 만들 수 있다고 생각합니다.

하지만 이미 용어 문서 행렬이 있는데 나는 이것을 tm 패키지로 가져 와서 사용하고 싶습니다.

알려주십시오.

답변

1

여기에 한 가지 방법이다 (그러나 직접적인 방법은 tm 패키지 내에서 가능성이있다) :

x <- read.csv(text=" , doc1, doc2, doc3, doc4, doc5 
main , 2, 0, 3, 0, 0 

virtual, 4, 0, 0, 0, 1 

origin , 0, 0, 1, 2, 0", header=TRUE) 


library(qdap) 
dat <- x[, -1] 
row.names(dat) <- x[, 1] 
your_tdm <- tdm(as.wfm(dat)) 

tm::inspect(your_tdm) 

## > tm::inspect(your_tdm) 
## A term-document matrix (3 terms, 5 documents) 
## 
## Non-/sparse entries: 6/9 
## Sparsity   : 60% 
## Maximal term length: 7 
## Weighting   : term frequency (tf) 
## 
##   Docs 
## Terms  doc1 doc2 doc3 doc4 doc5 
## main  2 0 3 0 0 
## origin  0 0 1 2 0 
## virtual 4 0 0 0 1 
+0

감사합니다. 타일러 링커. 나는 당신의 제안을 시도했지만 약간의 오류가 있습니다. "qdqp"패키지를 설치하면 일부 zip 파일을 찾을 수 없습니다. 버전 문제로 인해 발견되었습니다. 그래서 나는 수동으로 새로운 버전의 파일을 다운로드하고 설치했다. 그러나 libray (qdqp)를 호출했을 때 "package 'qdap'이 R 버전 3.0.3에서 빌드되었고 qdapDictionaries 패키지가 R 버전 3.0.3에서 빌드되었습니다. – user3436056

+0

또한"your_tdm <- tdm (as.wfm (dat)) ", R은"as.wfm (dat)의 경고 : 매트릭스가 아닙니다. 객체; 변환 할 수 없습니다. "내 R 버전은 3.0.3이며 문제가 될 수 있습니다. 어떻게 해결할 수 있을지 모르겠다. 도움을 주셔서 감사합니다. – user3436056

+0

첫 번째 문제는 이전 버전을 사용하고 있기 때문입니다. 두 번째는 경고가 아니라 오류입니다. 결론은 작동합니까? –

관련 문제