(6、Pandas数据分组、分割、合并和变形)Python爬虫与数据清洗的进化
数据分组
按照City分组,并计算sum值的平均数。
如果一次传入多个数组,就会得到按多列数值分组的统计结果。
将省份作为索引
groupby的size方法,可以返回一个含有个分组大小的Series
数据分割
显示30到32行的数据
数据合并
pandas有一些内置的合并数据集方法,如下所示:
- pandas.merge根据一个或多个键将多个DataFrame连接起来,类似数据库连接。
- pandas.concat可以沿着一个轴将多个对象堆叠起来。
- combine_first可以将重复数据编织在一起,用以填充另一个对象的缺失值。
数据库风格的DataFrame合并,这里merge方法默认使用inner连接(内连接),通过how参数可以指定连接方式,如outer外连接,left左连接,right右连接。
索引上的合并
传入left_index=True或者right_index=True,可以将索引作为连接键使用
DataFrame还有join方法,可以更好地合并索引,df1.join(df2)效果等同上面。
轴向连接
这是另一种连接,也被称为连接、绑定或堆叠。
axis=1 #做一个DataFrame出来
同样的逻辑,对DataFrame也是一样的。
数据变形
1、重塑层次化索引
针对DataFrame,有stack()函数和unstace()函数。stack()将数列的列“旋转”为行,unstack()反之。
数据透视表
df表中以“sum”作为数值域,“City_CN”为行,“Province_CN”为列