目录
R语言第二章数据处理①选择列
R语言第二章数据处理②选择行
R语言第二章数据处理③删除重复数据
R语言第二章数据处理④数据框排序和重命名
================================================
这一篇主要介绍如何通过一个或多个列(即变量)的值对数据中的行进行重新排序。
您将学习如何轻松地:
- 使用R函数arrange()[dplyr包]按升序(从低到高)进行排序
- 使用arrange()结合函数desc()[dplyr package]以降序(从高到低)对行进行排序
library(tidyverse)
my_data <- as_tibble(iris)
my_data
## # A tibble: 150 x 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
## # ... with 144 more rows
对行进行排序
dplyr函数arrange()可用于通过一个或多个变量对行重新排序(或排序)。
- 按Sepal.Length按升序重新排序行
#根据Sepal.Length值排序(升序)
my_data %>% arrange(Sepal.Length)
#根据Sepal.Length值排序(降序)
my_data %>% arrange(desc(Sepal.Length))
#根据Sepal.Length值排序(降序)
arrange(my_data, -Sepal.Length)
#根据Sepal.Length/Sepal.Width值排序(升序)
my_data %>% arrange(Sepal.Length, Sepal.Width)
- 使用dplyr :: rename()重命名列
将列Sepal.Length重命名为sepal_length,将Sepal.Width重命名为sepal_width:
my_data %>%
rename(
sepal_length = Sepal.Length,
sepal_width = Sepal.Width
)
- 使用Rbase函数重命名列
要将列Sepal.Length重命名为sepal_length,过程如下:
- 使用函数名称()或colnames()获取列名称
# Rename column where names is "Sepal.Length"
names(my_data)[names(my_data) == "Sepal.Length"] <- "sepal_length"
names(my_data)[names(my_data) == "Sepal.Width"] <- "sepal_width"
my_data
- 根据列位置重命名
names(my_data)[1] <- "sepal_length"
names(my_data)[2] <- "sepal_width"