R 将向量列表中的每个向量转换为矩阵
我有一个列表,其中包含图的节点度,如下所示:R 将向量列表中的每个向量转换为矩阵,r,matrix,vector,R,Matrix,Vector,我有一个列表,其中包含图的节点度,如下所示: degree <- list() degree[[4]]<-degree(graph[[4]],v=V(graph[[4]]),mode="all") > degree[[4]] 62586 4654 353 1883 7241 2680 1369 11942 21516 19922 20777 1137 251 3188 26013 7444 3 1 1 1 1
degree <- list()
degree[[4]]<-degree(graph[[4]],v=V(graph[[4]]),mode="all")
> degree[[4]]
62586 4654 353 1883 7241 2680 1369 11942 21516 19922 20777 1137 251 3188 26013 7444
3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2927 3439 65369 21737 16897 185
1 1 1 1 1 1
学位str(学位[[4]]
名为num[1:22]311。。。
-属性(*,“名称”)=chr[1:22]“62586”“4654”“353”“1883”。。。
matrix4Try
matrix4 matrix4 degree[[4]]名称(degree[[4]])=c(“a”、“b”、“cc”、“ddd”)
>学位[[4]]
a b cc ddd
4 3 4 2
>matrix4 matrix4
[,1]
a 4
b 3
cc 4
ddd 2
ncol(matrix4)返回1。我认为它应该返回两列。但在我的例子中,矩阵matrix4只有1列。如果这对您有效,请您标记答案,以便我可以收集我的宝贵点。谢谢
matrix4 <- matrix(degree[[4]], nrow = length(degree[[4]]))
> matrix4
[,1]
[1,] 3
[2,] 1
[3,] 1
[4,] 1
[5,] 1
[6,] 1
[7,] 1
[8,] 1
[9,] 1
[10,] 1
[11,] 1
[12,] 1
[13,] 1
[14,] 1
[15,] 1
[16,] 1
[17,] 1
[18,] 1
[19,] 1
[20,] 1
[21,] 1
[22,] 1
> str(degree[[4]])
Named num [1:22] 3 1 1 1 1 1 1 1 1 1 ...
- attr(*, "names")= chr [1:22] "62586" "4654" "353" "1883" ...
matrix4 <- cbind(degree[[4]]$names,matrix(degree[[4]], nrow = length(degree[[4]])))
matrix4 <- matrix( degree[[4]],
nrow = length(degree[[4]]),
dimnames=list(names(degree[[4]])) )
> matrix4 <- matrix(degree[[4]], nrow = length(degree[[4]]), dimnames=list(names(degree[[4]])))
> degree[[4]]<-c(4,3,4,2)
> names(degree[[4]])=c("a","b","cc","ddd")
> degree[[4]]
a b cc ddd
4 3 4 2
> matrix4 <- matrix(degree[[4]], nrow = length(degree[[4]]), dimnames=list(names(degree[[4]])))
> matrix4
[,1]
a 4
b 3
cc 4
ddd 2