R语言 如何对字符串列进行具体排序[duplicate]

qltillow  于 2023-01-06  发布在  其他
关注(0)|答案(1)|浏览(168)
    • 此问题在此处已有答案**:

Arranging rows in custom order using dplyr(3个答案)
Reorder rows using custom order(2个答案)
Arrange rows in custom order using R [duplicate](4个答案)
Order data frame rows according to vector with specific order(6个答案)
昨天关门了。
例如,我有一个典型的 Dataframe :

library(tidyverse)
my_data <- as_tibble(iris)
my_data

# A tibble: 150 × 5
   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
          <dbl>       <dbl>        <dbl>       <dbl> <fct>  
 1          5.1         3.5          1.4         0.2 setosa 
 2          4.9         3            1.4         0.2 setosa 
 3          4.7         3.2          1.3         0.2 setosa 
 4          4.6         3.1          1.5         0.2 setosa 
 5          5           3.6          1.4         0.2 setosa 
 6          5.4         3.9          1.7         0.4 setosa 
 7          4.6         3.4          1.4         0.3 setosa 
 8          5           3.4          1.5         0.2 setosa 
 9          4.4         2.9          1.4         0.2 setosa 
10          4.9         3.1          1.5         0.1 setosa 
# … with 140 more rows

我只想按列"Species"(有3个值:setosa、virginica和versicolor),指定行的确切顺序。例如:弗吉尼亚,然后是刚毛,然后是杂色。

qpgpyjmq

qpgpyjmq1#

您可以使用arrangematch

library(dplyr)

iris %>% 
  arrange(match(Species, c("virginica", "setosa", "versicolor")))


#>     Sepal.Length Sepal.Width Petal.Length Petal.Width    Species
#> 1            6.3         3.3          6.0         2.5  virginica
#> 2            5.8         2.7          5.1         1.9  virginica
#> 3            7.1         3.0          5.9         2.1  virginica
#> 4            6.3         2.9          5.6         1.8  virginica
#> 5            6.5         3.0          5.8         2.2  virginica
#> 6            7.6         3.0          6.6         2.1  virginica
#> 7            4.9         2.5          4.5         1.7  virginica
#> 8            7.3         2.9          6.3         1.8  virginica
#> 9            6.7         2.5          5.8         1.8  virginica
#> 10           7.2         3.6          6.1         2.5  virginica
#> 11           6.5         3.2          5.1         2.0  virginica
#> 12           6.4         2.7          5.3         1.9  virginica
#> 13           6.8         3.0          5.5         2.1  virginica
#> 14           5.7         2.5          5.0         2.0  virginica
#> 15           5.8         2.8          5.1         2.4  virginica
#> 16           6.4         3.2          5.3         2.3  virginica
#> 17           6.5         3.0          5.5         1.8  virginica
#> 18           7.7         3.8          6.7         2.2  virginica
#> 19           7.7         2.6          6.9         2.3  virginica
#> 20           6.0         2.2          5.0         1.5  virginica
#> 21           6.9         3.2          5.7         2.3  virginica
#> 22           5.6         2.8          4.9         2.0  virginica
#> 23           7.7         2.8          6.7         2.0  virginica
#> 24           6.3         2.7          4.9         1.8  virginica
#> 25           6.7         3.3          5.7         2.1  virginica
#> 26           7.2         3.2          6.0         1.8  virginica
#> 27           6.2         2.8          4.8         1.8  virginica
#> 28           6.1         3.0          4.9         1.8  virginica
#> 29           6.4         2.8          5.6         2.1  virginica
#> 30           7.2         3.0          5.8         1.6  virginica
#> 31           7.4         2.8          6.1         1.9  virginica
#> 32           7.9         3.8          6.4         2.0  virginica
#> 33           6.4         2.8          5.6         2.2  virginica
#> 34           6.3         2.8          5.1         1.5  virginica
#> 35           6.1         2.6          5.6         1.4  virginica
#> 36           7.7         3.0          6.1         2.3  virginica
#> 37           6.3         3.4          5.6         2.4  virginica
#> 38           6.4         3.1          5.5         1.8  virginica
#> 39           6.0         3.0          4.8         1.8  virginica
#> 40           6.9         3.1          5.4         2.1  virginica
#> 41           6.7         3.1          5.6         2.4  virginica
#> 42           6.9         3.1          5.1         2.3  virginica
#> 43           5.8         2.7          5.1         1.9  virginica
#> 44           6.8         3.2          5.9         2.3  virginica
#> 45           6.7         3.3          5.7         2.5  virginica
#> 46           6.7         3.0          5.2         2.3  virginica
#> 47           6.3         2.5          5.0         1.9  virginica
#> 48           6.5         3.0          5.2         2.0  virginica
#> 49           6.2         3.4          5.4         2.3  virginica
#> 50           5.9         3.0          5.1         1.8  virginica
#> 51           5.1         3.5          1.4         0.2     setosa
#> 52           4.9         3.0          1.4         0.2     setosa
#> 53           4.7         3.2          1.3         0.2     setosa
#> 54           4.6         3.1          1.5         0.2     setosa
#> 55           5.0         3.6          1.4         0.2     setosa
#> 56           5.4         3.9          1.7         0.4     setosa
#> 57           4.6         3.4          1.4         0.3     setosa
#> 58           5.0         3.4          1.5         0.2     setosa
#> 59           4.4         2.9          1.4         0.2     setosa
#> 60           4.9         3.1          1.5         0.1     setosa
#> 61           5.4         3.7          1.5         0.2     setosa
#> 62           4.8         3.4          1.6         0.2     setosa
#> 63           4.8         3.0          1.4         0.1     setosa
#> 64           4.3         3.0          1.1         0.1     setosa
#> 65           5.8         4.0          1.2         0.2     setosa
#> 66           5.7         4.4          1.5         0.4     setosa
#> 67           5.4         3.9          1.3         0.4     setosa
#> 68           5.1         3.5          1.4         0.3     setosa
#> 69           5.7         3.8          1.7         0.3     setosa
#> 70           5.1         3.8          1.5         0.3     setosa
#> 71           5.4         3.4          1.7         0.2     setosa
#> 72           5.1         3.7          1.5         0.4     setosa
#> 73           4.6         3.6          1.0         0.2     setosa
#> 74           5.1         3.3          1.7         0.5     setosa
#> 75           4.8         3.4          1.9         0.2     setosa
#> 76           5.0         3.0          1.6         0.2     setosa
#> 77           5.0         3.4          1.6         0.4     setosa
#> 78           5.2         3.5          1.5         0.2     setosa
#> 79           5.2         3.4          1.4         0.2     setosa
#> 80           4.7         3.2          1.6         0.2     setosa
#> 81           4.8         3.1          1.6         0.2     setosa
#> 82           5.4         3.4          1.5         0.4     setosa
#> 83           5.2         4.1          1.5         0.1     setosa
#> 84           5.5         4.2          1.4         0.2     setosa
#> 85           4.9         3.1          1.5         0.2     setosa
#> 86           5.0         3.2          1.2         0.2     setosa
#> 87           5.5         3.5          1.3         0.2     setosa
#> 88           4.9         3.6          1.4         0.1     setosa
#> 89           4.4         3.0          1.3         0.2     setosa
#> 90           5.1         3.4          1.5         0.2     setosa
#> 91           5.0         3.5          1.3         0.3     setosa
#> 92           4.5         2.3          1.3         0.3     setosa
#> 93           4.4         3.2          1.3         0.2     setosa
#> 94           5.0         3.5          1.6         0.6     setosa
#> 95           5.1         3.8          1.9         0.4     setosa
#> 96           4.8         3.0          1.4         0.3     setosa
#> 97           5.1         3.8          1.6         0.2     setosa
#> 98           4.6         3.2          1.4         0.2     setosa
#> 99           5.3         3.7          1.5         0.2     setosa
#> 100          5.0         3.3          1.4         0.2     setosa
#> 101          7.0         3.2          4.7         1.4 versicolor
#> 102          6.4         3.2          4.5         1.5 versicolor
#> 103          6.9         3.1          4.9         1.5 versicolor
#> 104          5.5         2.3          4.0         1.3 versicolor
#> 105          6.5         2.8          4.6         1.5 versicolor
#> 106          5.7         2.8          4.5         1.3 versicolor
#> 107          6.3         3.3          4.7         1.6 versicolor
#> 108          4.9         2.4          3.3         1.0 versicolor
#> 109          6.6         2.9          4.6         1.3 versicolor
#> 110          5.2         2.7          3.9         1.4 versicolor
#> 111          5.0         2.0          3.5         1.0 versicolor
#> 112          5.9         3.0          4.2         1.5 versicolor
#> 113          6.0         2.2          4.0         1.0 versicolor
#> 114          6.1         2.9          4.7         1.4 versicolor
#> 115          5.6         2.9          3.6         1.3 versicolor
#> 116          6.7         3.1          4.4         1.4 versicolor
#> 117          5.6         3.0          4.5         1.5 versicolor
#> 118          5.8         2.7          4.1         1.0 versicolor
#> 119          6.2         2.2          4.5         1.5 versicolor
#> 120          5.6         2.5          3.9         1.1 versicolor
#> 121          5.9         3.2          4.8         1.8 versicolor
#> 122          6.1         2.8          4.0         1.3 versicolor
#> 123          6.3         2.5          4.9         1.5 versicolor
#> 124          6.1         2.8          4.7         1.2 versicolor
#> 125          6.4         2.9          4.3         1.3 versicolor
#> 126          6.6         3.0          4.4         1.4 versicolor
#> 127          6.8         2.8          4.8         1.4 versicolor
#> 128          6.7         3.0          5.0         1.7 versicolor
#> 129          6.0         2.9          4.5         1.5 versicolor
#> 130          5.7         2.6          3.5         1.0 versicolor
#> 131          5.5         2.4          3.8         1.1 versicolor
#> 132          5.5         2.4          3.7         1.0 versicolor
#> 133          5.8         2.7          3.9         1.2 versicolor
#> 134          6.0         2.7          5.1         1.6 versicolor
#> 135          5.4         3.0          4.5         1.5 versicolor
#> 136          6.0         3.4          4.5         1.6 versicolor
#> 137          6.7         3.1          4.7         1.5 versicolor
#> 138          6.3         2.3          4.4         1.3 versicolor
#> 139          5.6         3.0          4.1         1.3 versicolor
#> 140          5.5         2.5          4.0         1.3 versicolor
#> 141          5.5         2.6          4.4         1.2 versicolor
#> 142          6.1         3.0          4.6         1.4 versicolor
#> 143          5.8         2.6          4.0         1.2 versicolor
#> 144          5.0         2.3          3.3         1.0 versicolor
#> 145          5.6         2.7          4.2         1.3 versicolor
#> 146          5.7         3.0          4.2         1.2 versicolor
#> 147          5.7         2.9          4.2         1.3 versicolor
#> 148          6.2         2.9          4.3         1.3 versicolor
#> 149          5.1         2.5          3.0         1.1 versicolor
#> 150          5.7         2.8          4.1         1.3 versicolor

相关问题