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


Самый простой способ отсортировать фрейм данных по столбцу в R — использовать функцию order() :

 #sort ascending
df[ order (df$var1), ]

#sort descending
df[ order (-df$var1), ]

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

 #create data frame
df <- data. frame (var1=c(1, 3, 3, 4, 5),
                 var2=c(7, 7, 8, 3, 2),
                 var3=letters[1:5])

#view data frame
df

  var1 var2 var3
1 1 7 a
2 3 7b
3 3 8 c
4 4 3 d
5 5 2nd

Пример 1: сортировка по столбцу

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

 #sort by var1 ascending
df[ order (df$var1), ]

  var1 var2 var3
1 1 7 a
2 3 7b
3 3 8 c
4 4 3 d
5 5 2nd

#sort by var1 descending
df[ order (-df$var1), ]

  var1 var2 var3
5 5 2nd
4 4 3 d
2 3 7 b
3 3 8 c
1 1 7 a

Обратите внимание, что мы также можем сортировать по вектору символов в алфавитном порядке:

 #sort by var3 ascending
df[ order (df$var3), ]

  var1 var2 var3
1 1 7 a
2 3 7 b
3 3 8 c
4 4 3 d
5 5 2nd

Пример 2. Сортировка по нескольким столбцам

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

 #sort by var2 ascending, then var1 ascending
df[ order (df$var2, df$var1), ]

  var1 var2 var3
5 5 2nd
4 4 3 d
1 1 7 a
2 3 7b
3 3 8 c

#sort by var2 ascending, then var1 descending
df[ order (df$var2, -df$var1), ]

  var1 var2 var3
5 5 2nd
4 4 3 d
2 3 7b
1 1 7 a
3 3 8 c

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

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *