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