pandas分组groupby、agg,排序sort,连接concat、join

it2026-09-02  11

连接concat和join

横向连接 pd.concat([df6,df7],axis=1) df6.join(df7) # df6的表格在前面,如需df7的表格在前需要交换位置 注意点: 1、concat这个方法,既可以实现横向连接,也可以实现纵向连接,通过设置axis的值来控制,axis=1表示的是横向连接,如果多个连接的对象,放在列表中 2、join也可以实现 纵向连接 pd.concat([df8,df9],ignore_index=True) 注意点: 1、进行纵向合并的数据,需要用[]集合起来 2、ignore_index忽略原有的行索引,重新排列 3、drop_duplicates()删除重复数据

排序

#按照成绩排序 df10.sort_values('score') #默认升序,从小到大 df10.sort_values(['score','group'],ascending=False,na_position='first') #sort各个属性 参数描述by字符串或者列表,如果是单个排序字段,使用的是字符串,如果指定多个,需要使用列表ascendingTrue的时候,是按照升序,默认是升序na_position表示的是空值的位置,'last’是默认的,'first’开始位置

分组

### groupby df11.groupby('class') df11.groupby(['class','grade']) for cls,data in df11.groupby(['class','grade']): print(cls) print(data) 注意点: 1、groupby 如果指定的是一个列,如果是多个列[] 2、groupby返回的是一个对象,所以不能直接访问,可以使用for

筛选出分组之后的列

如果筛选出一列数据[[列名]],返回的是dataframe对象 如果筛选出多个列数据,直接使用[][[]]均可 总结[[1,列2,。。。。]]

聚合函数 agg配合使用

dff.groupby('class')[['math']].agg(['mean','max','min','median','std']) 函数描述mean均值max最大值min最小值median中位数std标准差count计数skew偏度quantile指定分位数
最新回复(0)