如何指定矩阵的最后一列

时间:2013-07-09 18:04:54

标签: r matrix

我有一个矩阵A,我怎么能代表最后一列,因为我想根据它对矩阵进行排序。

2 个答案:

答案 0 :(得分:8)

> A <- matrix(rnorm(16), 4, 4)
> ncol(A)
[1] 4
> # Get the last column
> A[,ncol(A)]
[1]  0.7593943  0.0726012  2.2784912 -0.2571095
> # If you want to sort based on the last column...
> A[order(A[,ncol(A)]),]
           [,1]        [,2]        [,3]       [,4]
[1,] -0.9013910 -0.06612518 -1.51267548 -0.2571095
[2,]  0.3851738 -0.81303780  0.01062751  0.0726012
[3,] -1.6940473 -1.15323294 -1.50261705  0.7593943
[4,]  0.3120409 -0.30047966  0.59672449  2.2784912

答案 1 :(得分:4)

如果A是你的矩阵,那么A的最后一列是:

A[,ncol(A)]

如果您不熟悉R中的括号索引,则此代码选择A的所有行(因为逗号之前的空格为空),然后选择A的最后一列,因为R索引从1开始(与Python之类的语言不同) 。 ncol(A)以整数形式返回A中的列数,因此以这种方式建立索引可以得到您想要的结果。