R将矩阵转换为列表

R将矩阵转换为列表,r,matrix,dataframe,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" ... 其中包含数值。我需要将所有数值收集到一个长列表中(用于获取分布)。目前我拥有: f

我有一个大矩阵

> 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" ...
其中包含数值。我需要将所有数值收集到一个长列表中(用于获取分布)。目前我拥有:

for(i in 1:dim(distMatrix)[[1]]){
    for (j in 1:1:dim(distMatrix)[[1]]){
      distances[length(distances)+1] <- distMatrix[i,j]
    }  
  }
for(i in 1:dim(distMatrix)[[1]]{
对于(1:1:dim(distMatrix)[[1]]中的j){

距离[length(distances)+1]要将矩阵转换为列表,其长度与矩阵中的元素数相同,只需执行以下操作即可

as.list(distMatrix)
这将沿着列向下移动,但您可以使用转置

as.list(t(distMatrix))
因为你的矩阵是551x551,它应该足够有效