1
저는 R에 익숙하지 않고 특히 느린 중첩 루프를 벡터화하는 데 어려움이 있습니다. 루프는 중심 목록 (구조에 저장된 벡터)을 통과하여이 벡터와 아래의 x
배열의 행 사이의 거리를 찾습니다. 나는 이것이 속도를 위해 벡터화 될 필요가 있다는 것을 알고 있지만, 적절한 기능을 알아 내지 못하거나 apply
을 사용한다.느린 중첩 루프 있음 R
clusterCenters <- matrix(runif(10000),nrow=100)
clusterMembers <- matrix(runif(400000),nrow=4000)
features <- matrix(0,(dim(clusterMembers)[1]),(dim(clusterCenters)[1]))
for(c in 1:dim(clusterCenters)[1]){
center <- clusterCenters[c,]
for(v in 1:(dim(clusterMembers)[1])){
vector <- clusterMembers[v,]
features[v,c] <- sqrt(sum((center - vector)^2))
}
}
어떤 도움을 주셔서 감사합니다.
[재현 가능한 예] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)를 제공해주십시오. 그렇게 했더라도 코드에서 구문 오류를 발견했을 것입니다. –
(-1) 재현 가능한 예를 제공하면 기꺼이 찬성표를 던질 것입니다. 예를 들어, 35 개의 질문 이후에 기대되는 것입니다. – Arun
@Arun, 사과드립니다. 나는 더 잘 알고 부주의했다. 실제 문제와 관련된 차원이 훨씬 더 크지 만 문제를 보여주는 재현 가능한 예제를 생성했습니다. – Sevenless