Как отсортировать значения по алфавиту в R


Вы можете использовать следующие функции для сортировки значений в алфавитном порядке в R:

#sort values in vector alphabetically
sort(x)

#sort data frame column alphabetically
df[order(df$var1), ]

#sort data frame by multiple columns alphabetically
df[with(df, order(var1, var2)), ]

В следующих примерах показано, как использовать каждую из этих функций на практике.

Пример 1. Сортировка вектора по алфавиту

Следующий код показывает, как отсортировать вектор в алфавитном порядке в R:

#define vector
x <- c('A', 'F', 'C', 'D', 'B', 'E')

#sort values in vector alphabetically
sort(x)

[1] "A" "B" "C" "D" "E" "F"

Пример 2. Сортировка столбца фрейма данных по алфавиту

В следующем коде показано, как отсортировать фрейм данных в алфавитном порядке на основе определенного столбца:

#define data frame
df <- data.frame(player=c('A', 'F', 'C', 'D', 'B', 'E'),
 points=c(14, 19, 22, 29, 31, 16))

#view data frame
df

 player points
1 A 14
2 F 19
3 C 22
4 D 29
5 B 31
6 E 16

#sort data frame alphabetically based on player column
df[order(df$player),]

 player points
1 A 14
5 B 31
3 C 22
4 D 29
6 E 16
2 F 19

Пример 3. Сортировка нескольких столбцов по алфавиту

В следующем коде показано, как отсортировать фрейм данных в алфавитном порядке на основе нескольких столбцов:

#define data frame
df <- data.frame(team=c('A', 'A', 'A', 'B', 'B', 'B'),
 player=c('A', 'F', 'C', 'D', 'B', 'E'),
 points=c(14, 19, 22, 29, 31, 16))

#view data frame
df

 team player points
1 A A 14
2 A F 19
3 A C 22
4 B D 29
5 B B 31
6 B E 16

#sort data frame alphabetically by team, then by player
df[with(df, order(team, player)), ]

 team player points
1 A A 14
3 A C 22
2 A F 19
5 B B 31
4 B D 29
6 B E 16

Дополнительные ресурсы

Как отсортировать фрейм данных по столбцу в R
Как отсортировать фрейм данных по дате в R
Как удалить столбцы из фрейма данных в R