R 从矩阵的不同列中获取值的向量
矩阵是10x4,向量是10个元素。每个元素都是应该检索的矩阵的列索引。以下是一个例子:R 从矩阵的不同列中获取值的向量,r,matrix,identity-column,R,Matrix,Identity Column,矩阵是10x4,向量是10个元素。每个元素都是应该检索的矩阵的列索引。以下是一个例子: > M.mat [,1] [,2] [,3] [,4] [1,] -0.4236174 0.2228897 0.11676857 0.16906735 [2,] -0.4860078 0.9862164 -2.04735716 -0.33708521 [3,] -0.6931023 -0.2255126 -0.58214338
> M.mat
[,1] [,2] [,3] [,4]
[1,] -0.4236174 0.2228897 0.11676857 0.16906735
[2,] -0.4860078 0.9862164 -2.04735716 -0.33708521
[3,] -0.6931023 -0.2255126 -0.58214338 -0.08705187
[4,] 0.4048169 0.8713917 0.38543781 -1.38207954
[5,] 2.4005044 1.2483514 0.66759229 -1.33667156
[6,] -1.2083913 0.2389032 0.29554618 -0.05910570
[7,] 0.8055317 -0.7978780 -0.31873361 0.57248675
[8,] -0.1606493 0.4110878 0.90236993 -0.62311446
[9,] 0.3721249 0.5276403 -0.09323399 -0.41223947
[10,] 2.0704414 0.1747543 0.45456052 -1.09215597
> Idx
[1] 3 4 1 2 1 3 1 1 2 3
这意味着我想得到第1行的第3列,第2行的第4列,第3行的第1列
我试图创建一个包含两列的data.frame,一列是row.indx from 1;10,另一列是Idx,但它不起作用。有没有关于如何访问指定元素的建议?这应该可以帮助您:
M.mat[cbind(seq_along(Idx),Idx)]