如何提取存储在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