Python小镇Python必备技能:用pandas读Excel常见操作


想要操控你 , 必须要先读懂你...

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

1)读取没有表头的表单
下面这个表单没有表头:

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

pd.read_excel方法中的参数header默认为0 , 也就是默认以表单的第一行内容作为表头 , 但当表单没有表头时 , 则需要将参数header设置为None 。 df = pd.read_excel('./data.xlsx', header=None)print(df)
结果如下:

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

这时候 , 会根据列索引生成表头信息 。
2)读取多表头的表单
【Python小镇Python必备技能:用pandas读Excel常见操作】下面表单的第一二行都属于表头:

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

可设置参数header为[0, 1]:df = pd.read_excel('./data.xlsx', header=[0, 1])print(df)
结果如下:

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

忽略这里的不对齐问题 , Pycharm的默认显示就是这样 。
3)读取已有索引的表单
下面的表单打算以班级作为索引:

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

可设置参数index_col为0(或为‘班级’):df = pd.read_excel('./data.xlsx', index_col=0)print(df)
结果如下:

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

同上 , 忽略这里的不对齐 , Pycharm默认显示就这样 。
4)读取指定列
下面的表单 , 只需读取学生的语数外的成绩:

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

设置参数usecols为['语文', '数学', '英语'] , 当然也可以用索引值[0,1,2] , 或者使用‘A:C’ , 但个人更喜欢使用第一种 , 因为当列数发生变化时 , 后两者方法也要跟着变动 , 而第一种使用列名的方式则不需要变动 。 df = pd.read_excel('./data.xlsx', usecols=['语文','数学','英语'])print(df)

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

这种操作 , 相比较于一次性读取全部数据 , 然后再进行选取 , 会节省内存及时间 。
5)跳过某些行
下面的表单需跳过第一行空白行 , 且不需要小樱同学数据:

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

可对参数skiprows进行设置 , 如果仅传入一个int型数值 , 则代表从第一行开始算起 , 总共跳过多少行 。 如果是一个列表 , 那么里面的每个元素代表需要跳过的行索引 。
若skiprows为1 , 则表示从第一行开始算起 , 共跳过了1行数据 。 若skiprows为[0,4] , 表示跳过索引为0和4的行数据 。 df = pd.read_excel('./data.xlsx', skiprows=[0, 4])print(df)
结果如下:

Python小镇Python必备技能:用pandas读Excel常见操作
本文插图

同上 , 相比较于一次性读取全部数据 , 然后再进行选取 , 会节省内存及时间 。


推荐阅读