失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 【R语言】数据清理利器:dplyr库六函数:filter select arange mutate summarize

【R语言】数据清理利器:dplyr库六函数:filter select arange mutate summarize

时间:2022-09-29 01:16:31

相关推荐

【R语言】数据清理利器:dplyr库六函数:filter select arange mutate summarize

dplyr六函数

导入库和数据filterarrangeselectmutatesummarize

dplyr是一个用于高效数据清理包

他还提供了pipe这种优雅的东西(暂且称之为东西)

可以对行或列(即observation和variable)进行高效优雅的操作

导入库和数据

library(nycflights13)library(dplyr)fligths

导入dplyr库和flights数据集

filter

• Pick observations by their values ( filter() ).

filter的功能是根据列的值选择符合条件的行

例如,

# 挑选出日期为一月一日的航班数据jan1 <- filter(flights, month == 1, day == 1)# 选择圣诞节当天的航班数据dec25 <- filter(flights, month == 12, day == 25)# 选择十一月或十二月的dec25 <- filter(flights, month == 12 | month == 11)

& | ! 分别表示 与 或 非

通过 is.na(colname) 来滤除NA值

filter(flights, !is.na(month))

arrange

• Reorder the rows ( arrange() ).

arrange:重新排列列或者行

# 根据函数内列名来排出列的先后顺序arrange(flights, year, month, day)# 按arr_delay这一列降序排列所有数据arrange(flights, desc(arr_delay))

select

• Pick variables by their names ( select() ).

通过select选择列

# 选择年、月、日这几列select(flights, year, month, day)# 选择年到日的几列,结果同上select(flights, year:day)# 除了年到日的这几列,都选上select(flights, -(year:day))

mutate

• Create new variables with functions of existing variables

( mutate() ).

通过mutate生成新的列

可以对列进行各种运算,也可以拿出来一个或多个列进行运算

不过要注意他的参数,与一般函数的参数形式不同,详见文档

flights_sml <- select(flights,year:day,ends_with("delay"),distance,air_time)mutate(flights_sml,gain = arr_delay - dep_delay,hours = air_time / 60,gain_per_hour = gain / hours)

summarize

• Collapse many values down to a single summary ( summarize() ).

summarize(flights, delay = mean(dep_delay, na.rm = TRUE))# 与group_by组合起来用by_day <- group_by(flights, year, month, day)summarize(by_day, delay = mean(dep_delay, na.rm = TRUE))

如果觉得《【R语言】数据清理利器:dplyr库六函数:filter select arange mutate summarize》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。