我有一个包含 348 个数字列的数据框,我想将所有这些列按升序排列。 这个怎么做? 我尝试了一些按升序对第一列进行排序的代码。我希望它们全部按升序排列。 示例:
a1 = runif(n = 50, min = 0.1, max = 120)
a2 = runif(n = 50, min = 5, max = 151)
a3 = runif(n = 50, min = 1, max = 100)
a4 = runif(n = 50, min = 6, max = 180)
a5 = runif(n = 50, min = 6, max = 183)
a6 = runif(n = 50, min = 6, max = 254)
df = data.frame(a1,a2,a3,a4,a5,a6)
df
df2 = df[with(df, order(a1,a2,a3,a4,a5,a6)), ]
head(df2)
df2 第一列按升序排列,但我想要全部(a1:a6 按升序排列)
最佳答案
library(tidyverse)
df %>%
mutate(across(everything(), sort))
# A tibble: 50 x 6
a1 a2 a3 a4 a5 a6
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 2.30 5.31 3.28 8.25 8.62 11.2
2 3.39 15.6 3.70 16.4 21.0 12.7
3 7.11 24.3 8.29 17.9 22.1 17.4
4 10.8 24.3 9.09 25.3 25.8 22.0
5 11.9 40.2 9.86 25.4 28.7 24.3
6 13.7 40.6 11.3 25.7 31.3 37.1
7 21.4 41.6 12.3 29.6 39.1 38.1
8 27.1 56.3 12.8 39.3 40.5 45.5
9 28.7 60.1 14.3 39.8 46.2 63.8
10 29.1 62.1 15.4 50.2 46.8 72.8
# ... with 40 more rows
# i Use `print(n = ...)` to see more rows
关于r - 如何按升序对r中数据框的所有列进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73731380/