pd.read_excel使用

pd.read_excel(io, sheetname=0,header=0,skiprows=None,index_col=None,names=None,
                arse_cols=None,date_parser=None,na_values=None,thousands=None, 
                convert_float=True,has_index_names=None,converters=None,dtype=None,
                true_values=None,false_values=None,engine=None,squeeze=False,**kwds)

常用参数解析:

  • io :excel 路径
import numpy as np
import pandas as pd
from pandas import DataFrame
#定义路径IO
IO="C:\\Users\\zhouy_000\\Desktop\\python_study\\20190416\\test.xlsx"
#读取excel文件
sheet_a=pd.read_excel(io=IO)
#此处由于sheetname默认是0,所以返回第一个表
print(sheet_a)
"""
   姓名  年龄        出生日  爱好   关系
0  小王  23 1991-10-02  足球   朋友
1  小丽  23 1992-11-02  篮球  NaN
2  小黑  25 1991-10-18  游泳   同学
3  小白  21 1989-09-09  游戏  NaN
4  小红  25 1990-08-07  看剧  NaN
5  小米  24 1991-12-12  足球  NaN
6  大锤  26 1988-09-09  看剧   个人
"""
sheet_list=pd.read_excel(io=IO,sheet_name=[0,1])
print(type(sheet_list))
#<class 'collections.OrderedDict'>
print(sheet_list[1])
"""
        A        B     C
0  animal  balance  city
1     100       90    80
"""
  • sheetname:默认是sheetname为0,返回多表使用sheetname=[0,1],若sheetname=None是返回全表 。注意:int/string返回的是dataframe,而none和list返回的是dict of dataframe。(如上例所示sheet_list可视为一个列表,sheet_list[1]返回第二个表)
print(sheet_list[0].columns)
#Index(['姓名', '年龄', '出生日', '爱好', '关系'], dtype='object')
print(sheet_list[0].index)
#RangeIndex(start=0, stop=7, step=1)
print(sheet_list[0].values)
"""
[['小王' 23 Timestamp('1991-10-02 00:00:00') '足球' '朋友']
 ['小丽' 23 Timestamp('1992-11-02 00:00:00') '篮球' nan]
 ['小黑' 25 Timestamp('1991-10-18 00:00:00') '游泳' '同学']
 ['小白' 21 Timestamp('1989-09-09 00:00:00') '游戏' nan]
 ['小红' 25 Timestamp('1990-08-07 00:00:00') '看剧' nan]
 ['小米' 24 Timestamp('1991-12-12 00:00:00') '足球' nan]
 ['大锤' 26 Timestamp('1988-09-09 00:00:00') '看剧' '个人']]
"""
  • header :指定作为列名的行,默认0,即取第一行,数据为列名行以下的数据;若数据不含列名,则设定 header = None;
#同样可以根据表头名称或者表的位置读取该表的数据
sheet_b=pd.read_excel(io=IO,sheet_name="def",header=0)
print(sheet_b)
"""
        A        B     C
0  animal  balance  city
1     100       90    80
"""
sheet_b=pd.read_excel(io=IO,sheet_name="def",header=None)
print(sheet_b)
"""
        0        1     2
0       A        B     C
1  animal  balance  city
2     100       90    80
"""
  • skiprows:省略指定行数的数据
  • skipfooter:省略从尾部数的行数据
sheet_a=pd.read_excel(io=IO,sheet_name="abc",header=0)
print(sheet_a)
print(len(sheet_a))
"""
   姓名  年龄        出生日  爱好   关系
0  小王  23 1991-10-02  足球   朋友
1  小丽  23 1992-11-02  篮球  NaN
2  小黑  25 1991-10-18  游泳   同学
3  小白  21 1989-09-09  游戏  NaN
4  小红  25 1990-08-07  看剧  NaN
5  小米  24 1991-12-12  足球  NaN
6  大锤  26 1988-09-09  看剧   个人
7
"""
sheet_b=pd.read_excel(io=IO,sheet_name="abc",header=0,skiprows=1,skipfooter=2)
print(sheet_b)
print(len(sheet_b))
"""
   小王  23 1991-10-02 00:00:00  足球   朋友
0  小丽  23          1992-11-02  篮球  NaN
1  小黑  25          1991-10-18  游泳   同学
2  小白  21          1989-09-09  游戏  NaN
3  小红  25          1990-08-07  看剧  NaN
4
"""
  • index_col :指定列为索引列,也可以使用 u’string’
  • names:指定列的名字,传入一个list数据
sheet_a=pd.read_excel(io=IO,sheet_name="abc",header=0,index_col=0,names=["a","b","c","d","e"])
print(sheet_a)
"""
     b          c   d    e
a                         
小王  23 1991-10-02  足球   朋友
小丽  23 1992-11-02  篮球  NaN
小黑  25 1991-10-18  游泳   同学
小白  21 1989-09-09  游戏  NaN
小红  25 1990-08-07  看剧  NaN
小米  24 1991-12-12  足球  NaN
大锤  26 1988-09-09  看剧   个人
"""

index_col类似set_index,names作用类似修改列名。

参考:https://blog.csdn.net/brucewong0516/article/details/79096633

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值