내가 더미 바르와 솔루션 here을 구현하기 위해 노력하고,이 같은 루프가이R : 두 개의 Quanteda DFM 스파 스 행렬의 행렬 곱셈에 의해 주어진 빈 dgCMatrix를 초기화 하시겠습니까?
aaa <- DFM %*% t(DFM) #DFM is Quanteda dfm-sparse-matrix
for(i in 1:nrow(aaa)) aaa[i,] <- aaa[i,][order(aaa[i,], decreasing = TRUE)]
하지만 지금
for(i in 1:nrow(mmm)) mmm[i,] <- aaa[i,][order(aaa[i,], decreasing = TRUE)]
어디 mmm
아직 존재하지 않도록, 목표는 작업을 수행하는 것입니다 mmm <- t(apply(a, 1, sort, decreasing = TRUE))
과 같은 것. 하지만 이제 for 루프 전에 mmm
을 초기화해야합니다. Error: object 'mmm' not found
. aaa
과 mmm
의 유형은 이며 2의 행렬 곱셈에 의해 주어진 Quantada DFM matrices입니다.
구조
aaaFunc
는 DFM은 Quanteda DFM 희소 행렬 인 매트릭스 곱셈 DFM %*% t(DFM)
주어진다. 구조는 방법과 DFM에
> str(aaaFunc) Formal class 'dgCMatrix' [package "Matrix"] with 6 slots [email protected] i : int [1:39052309] 0 2 1 0 2 2616 2880 3 4 5 ... [email protected] p : int [1:38162] 0 2 3 7 8 10 13 15 16 96 ... [email protected] Dim : int [1:2] 38161 38161 [email protected] Dimnames:List of 2 .. ..$ : chr [1:38161] "90120000" "90120000" "90120000" "86140000" ... .. ..$ : chr [1:38161] "90120000" "90120000" "90120000" "86140000" ... [email protected] x : num [1:39052309] 1 1 1 1 2 1 1 1 2 1 ... [email protected] factors : list()
ERRORS 등등 콘텐츠 있지만 구조/않고 R 오브젝트를 복제에 일반적인 질문에 here 언급하도록한다. replace(...,NA)
mySparseMatrix.mt[nrow(mySparseMatrix),]<-
> aaaFunc.mt <- aaaFunc[0,]; aaaFunc.mt[nrow(aaaFunc),] <- NA
Error in intI(i, n = di[margin], dn = dn[[margin]], give.dn = FALSE) :
index larger than maximal 0
C. 오차 aaaFunc.mt[]<- NA
> aaaFunc.mt <- aaaFunc[0,]; aaaFunc.mt[] <- NA; aaaFunc.mt[1,]
Error in intI(i, n = [email protected][1], dn[[1]], give.dn = FALSE) : index larger than maximal 0
B. 오차
A. 에러
Browse[2]> mmmFunc <- replace(aaaFunc,NA); Error in replace(aaaFunc, NA) : argument "values" is missing, with no default Browse[2]> mmmFunc <- replace(aaaFunc,,NA); Error in `[<-`(`*tmp*`, list, value = NA) : argument "list" is missing, with no default Browse[2]> mmmFunc <- replace(aaaFunc,c(),NA); Error in .local(x, i, j, ..., value) : not-yet-implemented 'Matrix[<-' method
어떻게 두 Quanteda DFM 행렬의 행렬 곱셈에 의해 주어진 빈 dgCMatrix을 초기화합니까?
을 모두 유지하면서 다음 빈 희소 행렬을 초기화하거나 기존 스파 스 매트릭스를 재설정하거나 DFM 어떤 크기 초기화하려는 및 수행 초기 값되어야 하는지를 (제로 괜찮습니까?). –
@KenBenoit 두 개의 Quanteda dfm-martices의 행렬 곱셈에 의해 주어진 'Dimnames : List of 2'와 같이 질문의 본문에 구조를 추가했습니다. 초기 값은 이전 값과 동일한 유형이어야합니다. – hhh
유스 케이스로 판단하면'mmm = aaa'를 사용하여 코드를 사용할 수 있습니다. 이것은'aaa'에 영향을 미치지 않습니다. 다른 것을 필요로한다면'mmm = aaa;와 같은 중복 객체를 조작 할 수있다. mmm @ x = 벡터 (typeof (aaa @ x), 길이 (aaa @ x)); 변경할 필요가있는 다른 슬롯; ... ' –