R Сортиране на рамка с данни с помощта на Order()


В анализа на данни можете вид вашите данни според определена променлива в набора от данни. В R можем да използваме помощта на функцията order(). В R можем лесно да сортираме вектор от непрекъсната променлива или факторна променлива. Подреждането на данните може да бъде на възходящ or низходящ поръчка.

Синтаксис:

sort(x, decreasing = FALSE, na.last = TRUE):

Аргумент:

  • x: Вектор, съдържащ непрекъсната или факторна променлива
  • намаляваща: Контрол за реда на метода за сортиране. По подразбиране намаляването е зададено на `FALSE`.
  • последно: Показва дали стойността на `NA` трябва да бъде поставена последна или не

Пример 1

Например, можем да създадем рамка с данни на tibble и да сортираме една или няколко променливи. Рамката с данни на tibble е нов подход към рамката с данни. Подобрява синтаксиса на кадъра с данни и избягва разочароващото форматиране на тип данни, особено за разпределяне на знаци. Също така е удобен начин за създаване на рамка с данни на ръка, което е нашата цел тук. За да научите повече за tibble, вижте винетката: https://cran.r-project.org/web/packages/tibble/vignettes/tibble.html

library(dplyr)
set.seed(1234)
data_frame <- tibble(  
	c1 = rnorm(50, 5, 1.5),   
	c2 = rnorm(50, 5, 1.5),  
	c3 = rnorm(50, 5, 1.5),
	c4 = rnorm(50, 5, 1.5), 	
	c5 = rnorm(50, 5, 1.5)
)
# Sort by c1
df <-data_frame[order(data_frame$c1),]
head(df)

Изход:

# A tibble: 6 x 5
##       c1       c2       c3       c4       c5
##     <dbl>    <dbl>    <dbl>    <dbl>    <dbl>
## 1 1.481453 3.477557 4.246283 3.686611 6.0511003
## 2 1.729941 5.824996 4.525823 6.753663 0.1502718
## 3 2.556360 6.275348 2.524849 6.368483 5.4787404
## 4 2.827693 4.769902 5.120089 3.743626 4.0103449
## 5 2.988510 4.395902 2.077631 4.236894 4.6176880
## 6 3.122021 6.317305 5.413840 3.551145 5.6067027

Пример 2

# Sort by c3 and c4
df <-data_frame[order(data_frame$c3, data_frame$c4),]
head(df)

Изход:

# A tibble: 6 x 5
##        c1       c2       c3       c4       c5
##    <dbl>    <dbl>    <dbl>    <dbl>    <dbl>
## 1 2.988510 4.395902 2.077631 4.236894 4.617688
## 2 2.556360 6.275348 2.524849 6.368483 5.478740
## 3 3.464516 3.914627 2.730068 9.565649 6.016123
## 4 4.233486 3.292088 3.133568 7.517309 4.772395
## 5 3.935840 2.941547 3.242078 6.464048 3.599745
## 6 3.835619 4.947859 3.335349 4.378370 7.240240

Пример 3

# Sort by c3(descending) and c4(acending)
df <-data_frame[order(-data_frame$c3, data_frame$c4),]
head(df)

Изход:

# A tibble: 6 x 5
##         c1       c2       c3        c4       c5
##      <dbl>    <dbl>    <dbl>     <dbl>    <dbl>
## 1 4.339178 4.450214 8.087243 4.5010140 8.410225
## 2 3.959420 8.105406 7.736312 7.1168936 5.431565
## 3 3.339023 3.298088 7.494285 5.9303153 7.035912
## 4 3.397036 5.382794 7.092722 0.7163620 5.620098
## 5 6.653446 4.733315 6.520536 0.9016707 4.513410
## 6 4.558559 4.712609 6.380086 6.0562703 5.044277