【问题标题】:Is it possible reorder columns of an R tibble by some rule?是否可以通过某些规则重新排序 R tibble 的列?
【发布时间】:2023-03-21 19:30:01
【问题描述】:

我知道我可以使用dplyr::select 重新排列列,但是,具体来说,如果我有一系列数字列/变量,有没有办法告诉 select 或其他函数将这些变量从具有最大方差的变量重新排列到以递减顺序具有最小方差?

这个问题也可以应用于其他函数而不是方差,或者其他规则(也可以应用于字符变量)......

【问题讨论】:

    标签: r sorting dataframe dplyr tibble


    【解决方案1】:

    当然,只需计算每一列的统计数据并使用order

    xy <- data.frame(a = rnorm(10, mean = 5),
                     b = rnorm(10, mean = -3),
                     c = rnorm(10, mean = 4))
    
    xy[, order(sapply(xy, FUN = mean))]
    
               b        c        a
    1  -2.471796 2.425745 5.679503
    2  -3.902212 4.954602 5.550362
    3  -4.701174 4.319966 5.702840
    4  -3.803088 3.187227 4.768257
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多