【问题标题】:r two dataframe merge by absolute value of one columnr 两个数据框按一列的绝对值合并
【发布时间】:2015-07-08 06:03:42
【问题描述】:

我有两个格式相同的数据框,如下所示:

df1)

name value score
 a     2    0.01
 b     2    2.25
 c     1    5.24

df2)

name value score
 A     2    -8.01
 B     2    -3.25
 C     1    -2.24

我想根据“分数”列的绝对值合并这两个列表

输出)

name value score
 A     2    -8.01
 c     1    5.24
 B     2    -3.25
 b     2    2.25
 C     1    -2.24
 a     2    0.01

会有一个简单的 r 代码吗?我将不胜感激任何帮助。谢谢

【问题讨论】:

    标签: r sorting merge dataframe absolute-value


    【解决方案1】:

    rbindorder 行:

    newdat <- rbind(dat1,dat2)
    newdat[order(abs(newdat$score),decreasing=TRUE),]
    
    #  name value score
    #4    A     2 -8.01
    #3    c     1  5.24
    #5    B     2 -3.25
    #2    b     2  2.25
    #6    C     1 -2.24
    #1    a     2  0.01
    

    【讨论】:

    • 或使用data.tablerbindlist(list(df1, df2))[order(-abs(score))]
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-08
    • 2018-05-20
    • 2014-10-04
    • 1970-01-01
    • 2018-10-16
    • 2018-09-20
    • 2017-12-24
    相关资源
    最近更新 更多