r - 根据字符引用列表对数据框进行排序/排序

标签 r dataframe

考虑这两个 df 示例

df1=data.frame(names=c('a','b','c'),value=1:3)
df2=data.frame(names=c('c','a','b'),value=1:3)

这样

> df1
  names value
1     a     1
2     b     2
3     c     3
> df2
  names value
1     c     1
2     a     2
3     b     3

现在,我想将 df1 排序为与 df2 中的 names 列相同的顺序,以获得

names value
c     3
a     1
b     2

我怎样才能做到这一点?

最佳答案

尝试

df1[match(df2$names,df1$names),]

> df1[match(df2$names,df1$names),]
  names value
3     c     3
1     a     1
2     b     2

关于r - 根据字符引用列表对数据框进行排序/排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11867861/

相关文章:

r - ggvis 基于多列中的值进行过滤

删除带有 %in% 的向量元素返回字符 (0)

r - 如何在 R 中绘制探索性决策树

r - 使用 cbind 动态扩展数据框列

python - 接收SettingWithCopyWarning。继续安全吗?

python - 如何在不循环的情况下将 python JSON 行转换为数据帧列

r - 累积粘贴(连接)按另一个变量分组的值

dataframe - 在 Julia 的绘图函数中使用运算符

r - 如何更改R图表中的默认字体大小

string - 如何将变量值转换为R中的字符串?