as.matrix
으로 강요 한 R {tm} 패키지의이 문서 용어 행렬을 가지고 있습니다. 여기 MWE :행렬을 서브 세트하고, 코드 명을 어드레싱
> inspect(dtm[1:ncorpus, intersect(colnames(dtm), thai_list)])
<<DocumentTermMatrix (documents: 15, terms: 4)>>
Non-/sparse entries: 17/43
Sparsity : 72%
Maximal term length: 12
Weighting : term frequency (tf)
Terms
Docs toyota_suv gmotors_suv ford_suv nissan_suv
1 0 1 0 0
2 0 1 0 0
3 0 1 0 0
4 0 2 0 0
5 0 4 0 0
6 1 1 0 0
7 1 1 0 0
8 0 1 0 0
9 0 1 0 0
10 0 1 0 0
은 내가 toyota_suv
하지만 다른 차량을 참조 문서 만 (행)을 얻을 수 있도록,이 as.matrix(dtm)
서브 세트를해야합니다. 하나의 용어 (toyota_suv)에 대해 서브 세트를 얻으려면 dmat<-as.matrix(dtm[1:ncorpus, intersect(colnames(dtm), "toyota_suv")])
을 사용하는 것이 좋습니다. 검색어를 설정하려면 어떻게합니까? : toyota_suv는 0이 아니지만 non-toyota_suv 열의 값은 0입니까? 나는 열 단위로 ==0
을 지정할 수 있었지만이 행렬은 동적으로 생성되었습니다. 일부 시장에서는 4 대의 자동차가있을 수 있으며 일부 시장에서는 10 대의 자동차가있을 수 있습니다. 나는 미리 colnames를 지정할 수 없다. all_others == 0처럼 (non-toyota_suv가 아닌) 모든 열을 0으로 채우려면 어떻게해야합니까? 도움이 될 것입니다.
감사합니다. @Ken Benoit : 거의 다 왔어요. – Pradeep
편집 제한 시간. non-toyota_suv 열의 또 다른 객체를 생성하려고합니다 :'x.df3 <-x.df [, names (x.df)! = "toyota_suv", drop = FALSE]'그리고 나서이 객체에서 모두 0 조건을 실행합니다. . 하지만이 부분 집합을 첫 번째 조건'toyota_suv! = 0'과 통합하는 것은 실종되었습니다. 중간 단계를 피할 수있는 옵션이 없다고 가정합니다. 또한, 부분 집합 함수를 사용하거나'which' 또는'with'를 사용하여 실행하는 것에 대한 너무 많은 부정적인 의견도 있습니다. 그래서 나는 확실하지 않았다. – Pradeep