使用R中的rownames根据另一个数据帧中的行顺序重新排序数据帧中的行

问题描述

我正在处理两个数据框。我想重新排序一个数据帧的行,使其与第二个数据帧中的行的顺序相同。我有一个带有计数的数据框,另一个带有元数据。 我需要相同的顺序来生成用于统计比较的元数据向量。

df1
         ColName1 ColName2 ColName3
RowName1        3        0        5
Rowname2        0        1        7
Rowname3        0        2        2
Rowname4        9        3        4

df2
         ColName1 ColName2
RowName3        A        Q
Rowname2        A        W
Rowname4        B        Q
Rowname1        B        W

我希望得到

 df2
             ColName1 ColName2
    RowName1        B        W
    Rowname2        A        W
    Rowname3        A        Q
    Rowname4        B        Q

我看过帖子号。 27362718 并尝试过

df2[order(match(rownames(df2),rownames(df1))),]

但是没有用。

match(rownames(df2),rownames(df1))

列出指示哪些行不匹配的顺序。

order(match(rownames(df2),rownames(df1)))

列出顺序,其余不设置顺序。

有人可以帮忙吗?最好的问候,马辛

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)