如何提取存储在R列表中的每个矩阵的第一行?
要提取存储在R中列表中的每个矩阵的第一行,我们可以使用lapply函数。例如,如果我们有一个名为LIST的列表,其中包含一些矩阵,那么我们可以使用下面给出的命令找到每个矩阵的第一行-
lapply(LIST,'[',1,)
查看下面给出的示例以了解如何完成。
示例
以下代码段创建了一个矩阵列表-
M1<-matrix(rpois(20,5),ncol=2) M2<-matrix(rpois(20,1),ncol=2) M3<-matrix(rpois(20,8),ncol=2) M4<-matrix(rpois(20,10),ncol=2) List<-list(M1,M2,M3,M4) List
创建以下矩阵列表-
[[1]]
[,1][,2]
[1,] 2 6
[2,] 6 6
[3,] 10 5
[4,] 3 1
[5,] 6 7
[6,] 7 2
[7,] 6 5
[8,] 4 6
[9,] 9 7
[10,] 7 6
[[2]]
[,1][,2]
[1,] 1 1
[2,] 1 0
[3,] 1 3
[4,] 2 1
[5,] 1 1
[6,] 5 0
[7,] 2 0
[8,] 0 0
[9,] 2 0
[10,] 1 0
[[3]]
[,1] [,2]
[1,] 13 7
[2,] 9 11
[3,] 11 12
[4,] 10 3
[5,] 8 10
[6,] 9 4
[7,] 6 8
[8,] 13 8
[9,] 13 8
[10,] 5 6
[[4]]
[,1] [,2]
[1,] 7 8
[2,] 10 16
[3,] 11 14
[4,] 6 10
[5,] 10 12
[6,] 7 7
[7,] 13 8
[8,] 14 6
[9,] 9 14
[10,] 12 18现在,为了提取List中每个矩阵的第一行,将以下代码添加到上面的代码片段中-
M1<-matrix(rpois(20,5),ncol=2) M2<-matrix(rpois(20,1),ncol=2) M3<-matrix(rpois(20,8),ncol=2) M4<-matrix(rpois(20,10),ncol=2) List<-list(M1,M2,M3,M4) lapply(List,'[',1,)输出结果
如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出-
[[1]] [1] 2 6 [[2]] [1] 1 1 [[3]] [1] 13 7 [[4]] [1] 7 8