按另一个矩阵的姓氏对矩阵进行排序

时间:2019-01-05 21:45:55

标签: r sorting dataframe matrix

我有两个尺寸相同的矩阵,它们的股票名称与公司名称相同,但是顺序不同!

我想按矩阵“ B”的别名对矩阵“ A”进行排序。

因此,A的姓氏和相应的值应与B的姓氏顺序相同。

我该怎么做?

示例: enter image description here

亲切问候

1 个答案:

答案 0 :(得分:1)

以R表示的示例是

A <- matrix(c(1, 4, 2), nrow = 1)
colnames(A) <- c("B", "D", "E")
A
#      B D E
# [1,] 1 4 2

B <- matrix(c(2, 5, 1), nrow = 1)
colnames(B) <- c("E", "B", "D")
B
#      E B D
# [1,] 2 5 1

然后我们可以简单地按照与A中的列相同的顺序对B的列进行子集化:

A[, colnames(B)]
# E B D 
# 2 1 4