我有一个矩阵列表如下。
listMat <- list(A=matrix(1:9, ncol=3), B=matrix(10:18, ncol=3))
listMat
$A
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
$B
[,1] [,2] [,3]
[1,] 10 13 16
[2,] 11 14 17
[3,] 12 15 18
我想提取矩阵A的第1列和第2列以及B的第3列。 这些职位在清单中列出。
listPosition <- list(A=c(1,2), B=c(1))
listPosition
$A
[1] 1 2
$B
[1] 1
有没有办法提取元素而不是使用以下命令
listMat[["A"]][,1:2]
listMat[["B"]][,1]
答案 0 :(得分:3)
我们可以使用Map
使用matrix
list
中提取相应的listPosition
元素
Map(function(x, y) x[, y, drop = FALSE], listMat, listPosition)
答案 1 :(得分:3)
truckMPG2.Text = truckWeight2.SelectedValue.ToString();