Как отсортировать таблицу в r (с примерами)


Есть два метода, которые вы можете использовать для сортировки таблицы в R:

Метод 1: используйте базу R

 #sort table in ascending order
my_table_sorted <- my_table[order(my_table)]

#sort table in descending order
my_table_sorted <- my_table[order(my_table, decreasing= TRUE )]

Способ 2: используйте dplyr

 library (dplyr)

#sort table in ascending order
my_table_sorted<- my_table %>% as. data . frame () %>% arrange(Freq)

#sort table in descending order
my_table_sorted<- my_table %>% as. data . frame () %>% arrange(desc(Freq))

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

 #createvector
data <- c(3, 8, 8, 8, 7, 7, 5, 5, 5, 5, 9, 12, 15, 15)

#create table
my_table <- table(data)

#view table
my_table

data
 3 5 7 8 9 12 15 
 1 4 2 3 1 1 2

Пример 1. Сортировка таблицы по основанию R.

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

 #sort table in ascending order
my_table_sorted <- my_table[order(my_table)]

#view sorted table
my_table_sorted

data
 3 9 12 7 15 8 5 
 1 1 1 2 2 3 4

И мы можем использовать аргумент по убыванию=True в функции order() для сортировки значений массива в порядке убывания:

 #sort table in descending order
my_table_sorted <- my_table[order(my_table, decreasing= TRUE )]

#view sorted table
my_table_sorted

data
 5 8 7 15 3 9 12 
 4 3 2 2 1 1 1

Пример 2. Сортировка таблицы с помощью dplyr

Мы можем использовать следующий код для сортировки значений массива в порядке возрастания с помощью функции Arrange() из пакета dplyr:

 library (dplyr)

#sort table in ascending order
my_table_sorted <- my_table %>% as. data . frame () %>% arrange(Freq)

#view sorted table
my_table_sorted

  data Freq
1 3 1
2 9 1
3 12 1
4 7 2
5 15 2
6 8 3
7 5 4

И мы можем использовать функцию desc() для сортировки значений массива в порядке убывания:

 library (dplyr)

#sort table in descending order
my_table_sorted <- my_table %>% as. data . frame () %>% arrange(desc(Freq))

#view sorted table
my_table_sorted

  data Freq
1 5 4
2 8 3
3 7 2
4 15 2
5 3 1
6 9 1
7 12 1

Примечание . Полную документацию по функции dplyr Arrange() можно найти здесь .

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

В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:

Как создать таблицу частот по группам в R
Как создать двустороннюю таблицу в R
Как построить таблицу в R

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

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