Nir*_*rke 4 r matrix dataframe
我有一个大矩阵
> str(distMatrix)
num [1:551, 1:551] 0 6 5 Inf 5 ...
- attr(*, "dimnames")=List of 2
..$ : chr [1:551] "+" "ABRAHAM" "ACTS" "ADVANCE" ...
..$ : chr [1:551] "+" "ABRAHAM" "ACTS" "ADVANCE" ...
Run Code Online (Sandbox Code Playgroud)
其中包含数值.我需要将所有数值收集到一个长列表中(用于获取分配).目前我所拥有的:
for(i in 1:dim(distMatrix)[[1]]){
for (j in 1:1:dim(distMatrix)[[1]]){
distances[length(distances)+1] <- distMatrix[i,j]
}
}
Run Code Online (Sandbox Code Playgroud)
但是,这需要永远.有谁能建议更快的方式?
要将矩阵转换为列表,其长度与矩阵中的元素数相同,您可以这样做
as.list(distMatrix)
Run Code Online (Sandbox Code Playgroud)
这会在列中向下,但您可以使用转置
as.list(t(distMatrix))
Run Code Online (Sandbox Code Playgroud)
让它跨越行.由于你的矩阵是551x551,它应该足够有效.