我已使用代码中所示的稀疏矩阵来处理较大的文件,但是如何使它运行得更快?
library(Matrix)
for (i in 1:n) {
if (verbose) A[i, i] <- 1 + A[s[i], d[i]] / 2
if (i < n) {
jj <- (i + 1L):n
for (j in jj) {
if ((a.ij <- (A[i, s[j]] + A[i, d[j]]) / 2) != 0)
A[j, i] <- A[i, j] <- a.ij
}
}
if (verbose) {
n.not0 <- sum(A[i, jj] != 0)
}
}
A[-N,-N]
}
我唯一的问题是代码无法快速运行,这需要大量时间才能运行,我该怎么办?