dplyr
数据的基础处理¶
筛选行/列¶
filter() 处理数据框数据(df),筛选满足条件的行
filter_if()选择满足特定条件的行,跟filter()的差别是?
slice()根据指定行数,选择行?
select() 按照指定列,形成新的数据框
select_if()选择满足特定条件的列
对行/列数据进行操作¶
arrange() 对df中行数据按指定列中数据进行重新排序
order() 返回排序的索引值,内置排序函数
min_rank() 最小值排序序号
sort() 对元素进行排序,内置函数
mutate() 根据旧列添加新列,或者替换旧列数,配上across()在多个列上应用相同的变换或统计函数
transmute() 只保留新列
分组统计¶
group_by() 指定列进行分组,分组后再用summarize()后会保留分组列
cut()函数,进行固定范围值添加新组
ungroup() 取消分组,在使用管道符进行参数传递中使用的是同一个源数据,所以要及时撤销分组操作!
-
聚类
summarize()、summarise() 统计分析列数据
slice_max()指定最大值的观测行
slice_min()
n() 计算行数
count()计算唯一值出现次数,跟python不同
n_distinct()计算种类数,跟上面的唯一值次数指频数不同
处理关系数据¶
inner_join() 内连接
left_join()左连接
right_join()右连接
full_join() 全连接
semi_join()半连接,目的筛选左表数据,类似交集但只保留做表数据。以右表数据作为标准,筛选左表中存在于右表中的数据,并不会返回右表中任何数据。右有左也有的数据。
anti_join()反连接,目的是筛选左表数据,跟半连接相反,筛选右表没有的数据,返回在第一个数据框中存在而在第二个数据框中不存在的行。右无,左有的数据。
merge() 内置函数,不建议用