工具学习 -python -03 Pandas

借着别人的文章(王圣元 [王的机器] ),复盘一下python的基础知识点。感谢原作者的分享!
Pandas 用的比较多,这里只作大纲回顾
Pandas 里面的数据结构是多维数据表,细化为一维的 Series,二维的 DataFrame。

多维数据表 = 多维数组 + 描述

其中

  • Series = 1darray + index

  • DataFrame = 2darray + index + columns

【创建数据表】创建 Series, DataFrame, Panel 用下面语句

  • pd.Series(x, index=idx)

  • pd.DataFrame(x, index=idx, columns=col)

  • pd.Panel(x, item=itm, major_axis=n1, minor_axis=n2)

DataFrame 由多个 Series 组成,Panel 有多个 DataFrame 组成。Series 非常类似于一维的 DataFrame。

【索引和切片数据表】在索引或切片 DataFrame,有很多种方法。最好记的而不易出错的是用基于位置的 at 和 loc,和基于标签的 iat 和 iloc,具体来说,索引用 at 和 iat,切片用 loc 和 iloc。带 i 的基于位置,不带 i 的基于标签。

用 MultiIndex 可以创建多层索引的对象,获取 DataFrame df 的信息可用

  • df.loc[1st].loc[2nd]

  • df.loc[1st].iloc[2nd]

  • df.iloc[1st].loc[2nd]

  • df.iloc[1st].iloc[2nd]

要调换 level 可用

  • df.index.swaplevel(0,1)

  • df.columns.swaplevel(0,1)

要设置和重设 index 可用

  • df.set_index( columns )

  • df.reset_index

【合并数据表】用 merge 函数按数据表的共有列进行左/右/内/外合并。

image

【连接数据表】用 concat 函数对 Series 和 DataFrame 沿着不同轴连接。

【重塑数据表】用 stack 函数将「列索引」变成「行索引」,用 unstack 函数将「行索引」变成「列索引」。它们只是改变数据表的布局和展示方式而已。

image
image
image

【透视数据表】用 pivot 函数将「一张长表」变成「多张宽表」,用 melt 函数将「多张宽表」变成「一张长表」。它们只是改变数据表的布局和展示方式而已。

image
image

【分组数据表】用 groupBy 函数按不同「列索引」下的值分组。一个「列索引」或多个「列索引」就可以。

【整合数据表】用 agg 函数对每个组做整合而计算统计量。

【split-apply-combine】用 apply 函数做数据分析时美滋滋。

image
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容