이 상당히 특정 질문입니다, 그러나 희망은 다른 너무 사람이 관련이체크 희소성은
문서의 수를 찾을 수있는 간단한 방법이 있다면사람이 알고 있나요 {tm} 패키지가있는 코퍼스에 용어가 나타납니다.
기본적으로 필자가 작성한 용어 - 문서 행렬이있는 경우 특정 용어에 해당 행이 얼마나 희박한 지, 즉 해당 행에 대해 0이 아닌 값을 가진 행이 몇 개 있는지 확인하고자합니다 . for 루프는 분명히 작동 할 수 있지만 매우 큰 행렬로 작업하므로 반복적으로 반복하여 루프를 서브 세트하면 CPU에 지루한 문제가 발생합니다.
실제로 ... (위의 질문에 대한 답은 좋겠지 만) 내가 실제로하려는 것은 에 해당하는 번호를 매트릭스에 각각 항으로 사용하는 것입니다. 작동
TDM <- TermDocumentMatrix(somecorpus)
terms <- TDM$dimnames$Terms
idf <- data.frame(term = terms, freq = numeric(length(terms)), stringsAsFactors = F)
for (i in 1:nrow(idf)) {
aa <- as.matrix(TDM[,idf$term[i]])
idf$freq[i] <- length(aa[aa[,1]>0, ])
}
을하지만, 그것은 looong 시간이 소요 : 지금은 사용하고 있습니다. 더 좋은 생각? 미리 감사드립니다. 세스
'apply'는'for' 루프보다 빠릅니다. 어쩌면'apply (idf, MARGIN = 1, FUN = function (x) {sum (ifelse (x> 0, 1, 0)})'와 같은 것을 시도해보십시오. – Zach
그러나 샘플 자료를 제공하면 도움이 될 수 있습니다. 아마도'dput()'을 사용하는 처음 10 개 또는 20 개의 문서 일 것이다. – Zach