R 按矩阵列名提取矩阵列值

R 按矩阵列名提取矩阵列值,r,matrix,subset,R,Matrix,Subset,是否可以从矩阵中按名称获取矩阵列 我尝试了各种方法,例如myMatrix[“test”],但似乎没有任何效果。是的。但是,如果您想要列,请将“test”放在逗号之后 > A <- matrix(sample(1:12,12,T),ncol=4) > rownames(A) <- letters[1:3] > colnames(A) <- letters[11:14] > A[,"l"] a b c 6 10 1 >A行名称(A)列名称

是否可以从矩阵中按名称获取矩阵列

我尝试了各种方法,例如
myMatrix[“test”]
,但似乎没有任何效果。

是的。但是,如果您想要列,请将“test”放在逗号之后

> A <- matrix(sample(1:12,12,T),ncol=4)

> rownames(A) <- letters[1:3]

> colnames(A) <- letters[11:14]
> A[,"l"]
 a  b  c 
 6 10  1 
>A行名称(A)列名称(A)A[,“l”]
a、b、c
6 10  1 
另请参见
帮助(提取)

>myMatrix行名(myMatrix)列名(myMatrix)myMatrix
A、B、C、D、E
A 13 5 7 9
B 2 4 6 8 10
>myMatrix[“A”,“A”]
[1] 1
>myMatrix[“A”,]
A、B、C、D、E
1 3 5 7 9 
>myMatrix[,“A”]
A B
1 2 

@Joris-你知道,要想找到R问题的答案,其中一个棘手的方面就是这种语言被命名为“R”。这给了谷歌一个赚钱的机会!我用谷歌搜索了我上面的问题,用了各种各样的搜索词,结果一无所获。即使是简单的问题也能被问到,因为SO被谷歌很好地索引了——结果似乎总是排在最前面。希望其他初学者能找到这个=)@SFun28:查看www.rseek.org,例如这个问题:但是你是对的,这里也可以问一些简单的问题,不过如果你是新用户,我会简单地将你发送到R的简介中。@Joris-sweet!rseek将非常有用。@Joris,您可能忘了写as.numeric(A[,“l”])@Frank,如果该矩阵中的值不是数字,不应转换为数字,那么这将是一个错误的答案。问题是获取列,而不是尝试将其转换为数字。如果您想使用该技巧转换为向量,则不必这样做。如果选择单个列或行,R将自动缩小尺寸。您可以避免使用
drop=FALSE
作为索引运算符
[
的额外参数,例如:
A[,'l',drop=FALSE]
> myMatrix <- matrix(1:10, nrow=2)
> rownames(myMatrix) <- c("A", "B")
> colnames(myMatrix) <- c("A", "B", "C", "D", "E")

> myMatrix
  A B C D  E
A 1 3 5 7  9
B 2 4 6 8 10

> myMatrix["A", "A"]
[1] 1

> myMatrix["A", ]
A B C D E 
1 3 5 7 9 

> myMatrix[, "A"]
A B 
1 2