我有一个矩阵:
mat <- matrix(c(3,9,5,1,-2,8), nrow = 2)
[,1] [,2] [,3]
[1,] 3 5 -2
[2,] 9 1 8
我有一个列表:
lst <- as.list(data.frame(matrix(c(3,9,5,1,-2,8), nrow = 2)))
$X1
[1] 3 9
$X2
[1] 5 1
$X3
[1] -2 8
我可以通过mat[i,j]
访问矩阵我可以访问列表lst[[c(i,j)]]
但是如果在一个矩阵中如果我做mat[1,2]
,我得到一个5。如果我在列表lst[[c(1,2)]]
中使用相同的数字,我得到9。
当我访问列表时,是否有一种方法可以获得相同的数字?也许以某种方式操纵列表?当我使用lst[[c(1,2)]]
时,我想得到5
而不是9
,我想得到与使用mat[i,j]
时相同的数字。
你可以试试
> list2DF(lst)[1, 2]
[1] 5
您可以使用purrr
中的transpose()
来转置列表
lst2 <- purrr::transpose(lst)
lst2[[c(1,2)]]
# [1] 5