R數(shù)據(jù)科學(xué)day2-2

  • arrange()排序

arrange(flights, year, month, day)

注:就是excel的多條件排序。后面的在前面的變量基礎(chǔ)上排序。

arrange(flights, desc(dep_delay))

降序排列。

無論正序倒序,空值排在最后

df <- tibble(x = c(5, 2, NA))
arrange(df, x)
arrange(df, desc(x))#NA總是排在后面

注:arrange(df, desc(is.na(x))) 只把NA排在前面,其他數(shù)字還按原來順序排。
arrange(df, desc(is.na(x)),x)把NA排在前面,其他X數(shù)據(jù)還按正序排。同上效果。
arrange(df, desc(is.na(x),x))把NA排在前面,其他x數(shù)據(jù)按倒序排。

  • select()篩選列

#1. 根據(jù)列名單獨(dú)選擇某幾列
select(flights, year, month, day)
#2.連選幾列
select(flights, year:day)
#3.連選+反選
select(flights, -(year:day))
#4.輔助函數(shù)-選擇列名符合以下要求的
starts_with("abc"): 以abc開頭的
ends_with("xyz"): 以xyz結(jié)尾的
contains("ijk"):包含ijk的
matches("(.)\\1"): 匹配正則表達(dá)式的
#5.重命名
rename(flights, tail_num = tailnum) #將tailnum修改為tail_name
#6.某幾列移動到開頭,everything表示其余各列
select(flights, time_hour, air_time, everything())

select(flights, contains("TIME", ignore.case = FALSE))
select輔助函數(shù)默認(rèn)忽略大小寫,如需修改加上ignore.case = FALSE
注:filter主要篩選行,select主要篩選列。

  • mutate()增加新變量

mutate() 總是將新列添加在數(shù)據(jù)集的最后,增加的新變量可以通過運(yùn)算得到。

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

transmute():只保留新列。

transmute(flights,
gain = arr_delay - dep_delay,
hours = air_time / 60,
gain_per_hour = gain / hours
)
mutate常見創(chuàng)建函數(shù),引用自花花圖片

dplyr數(shù)據(jù)轉(zhuǎn)換1.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容