for 루프에서 25000 x 25000 행렬을 채우려고하지만 R이 나를 잠급니다. 데이터에는 많은 수의 항목이 있으므로 스파 스 매트릭스가 적합할까요?큰 행렬 및 계산 채우기
다음은 몇 가지 샘플 데이터 및 코드입니다.
x<-c(1,3,0,4,1,0,4,1,1,4)
y<-x
z<-matrix(NA,nrow=10,ncol=10)
for(i in 1:10){
if(x[i]==0){
z[i,]=0
} else{
for(j in 1:10){
if(x[i]==y[j]){
z[i,j]=1
} else{z[i,j]=0
}
}
}
}
다른 질문이 있습니다. 이 큰 행렬에 대한 계산을 수행 할 수 있습니까? 이 크기의 일부 샘플 행렬에 대해 계산을 수행 할 때 정수 오버플로 또는 R이 완전히 잠기는 경고가있는 NA 출력을 얻습니다.
아마, 달성하고자하는 것에 대해 더 많은 정보를 제공하는 것이 더 도움이 될 것입니다. 즉,이 특정 문제는 'outer (x, x, "==") * (x! = 0)'로 해결할 수 있습니다. 그럼에도 불구하고 패키지 "매트릭스"가 여기에 매우 유용합니다. –