pandas excel lookup函数_pandas 常用函数read_excel()

python工作中的有些场景,我们需要 下载数据 -> 处理数据 -> 保存数据 -> 显示数据。

1df42342bddb63125e374f7f5fd08008.png

pandas作为python中用来做数据分析 的工具库,就是为了解决数据分析任务而创建的。   3fa81f5a4d66447f13d4bcf13ff4c716.png 列表/ numpy/ pandas 列表里面的元素可以是python里面的任意的对象,使用方便,但效率不高 numpy是多维的数组结构,只能保存同一类型的数据,通常是数值类型,加大了数值计算的效率 pandas工作在numpy之上,继承了numpy效率高的优点,且易于使用。

1214e325050219024b80dac2f33c8f06.png

pandas的两个数据结构 Series和DataFrame DataFrame表示的是2维数据,Series表示的是1维数据 pandas跟numpy不一样的是,numpy可以表示任意多维,而pandas没有3维以上的数据结构 excel表格就相当于一个DataFrame对象,每一列就是一个Series,每一个DataFrame都是由多个Series组成。 e848125aef544558068eda380301b10a.png 创建Series

>>>import pandas as pd

>>> s =pd.Series([1,2,3],index=list('abc'),dtype='int64',name='num')  # 创建Series方法一

>>> s

a    1

b    2

c    3

Name: num,dtype: int64

>>>

>>>s=pd.Series({'a':1,'b':2,'c':3}) # 创建Series方法二,字典的键就作为Series的索引

>>> s

a    1

b    2

c    3

dtype: int64

>>>

>>> s =pd.Series(3.0, index=['a', 'b', 'c'])   #创建Series方法三,传入一个标量

>>> s

a    3.0

b    3.0

c    3.0

dtype: float64

>>>

实际情况中,这3种方式我们都不用,我们一般是直接读取一个excel表格,这就是一个DataFrame,我们都是通过这种方式来得到一个Series的。 创建DataFrame >>>import pandas as pd >>>list_2d = [[1,2],[3,4]] >>> df= pd.DataFrame(list_2d, columns=['A','B'], index=['x','y'])  # 创建DataFrame方法一,通过2维的list-like创建 >>> df    A  B x  1  2 y  3  4 >>> d ={'a':[1,3], 'b':[2,4]}    # 创建DataFrame方法二,通过字典创建,字典的key作为列索引 >>> df= pd.DataFrame(d) >>> df    a  b 0  1  2 1  3  4 >>> df= pd.DataFrame(d, index=['x','y']) >>> df    a  b x  1  2 y  3  4 >>> df= pd.read_excel('goods.xlsx') # 创建DataFrame方法三,通过读取Excel表 >>> df          货号  商品代码  颜色代码 商品名称 品牌   成本  季节  商品年份 0   QTVW434 QTVW  5600  羽绒服  A 122  四季  2019 1  ACDA5352 ACDA  4322   棉服  B  55  冬季  2018 2   QTVW331 QTVW  2133  羽绒服  A 122  四季  2019 >>>   read_excel()常用参数 pandas.read_excel( io,  # 路径,StringIO,URL parse_dates=False,      # 指定解析成日期格式的列 # True  尝试解析index # [0,1]或[‘a’,’b’] 尝试解析指定列作为一个单独的日期列 # [[0,1,2]]  结合多列解析为单个日期列 # {‘日期’:[0,1,2]}  结合多列解析为单个日期列,结果的列名改为‘日期’ date_parser=None,      # function,解析日期格式的函数 sheet_name=0,           # 选择子表(sheet),默认0选第0个 # int 选择第几个sheet,从0开始 # str sheet名字 # list: [0,‘2月’],返回字典,字典里面会保存多个DataFrame对象 # None全部sheet,返回字典 nrows # init, 默认None,要解析的行数 header=0,                    # 指定作为‘列索引’的行 index_col=None,         # 指定作为‘行索引’列 usecols=None,            # None默认全部 # str ‘A,C’(A列和C列)  ‘A,C:E’(A列,C列至E列) # int-list [0,2](第0列和第2列) # str-list [‘AAA’,‘CCC’](AAA列和CCC列),建议用这种方法,代码可读性比较好,而且有时候可能会增加删减列,这样的话index就会变,代码就需要重写,而列名通常不改。 # 函数 lambda x:x=’CCC’ skiprows=None,        # 跳过行 names 要使用的列名列表。如果文件不包含标题行,则应显式传递header=None dtype 字典,{‘列名’:‘类型’},设置列的类型,每一个列都是一个Series,通过dtype可以设置这个Series的类型,便于我们后期数据处理 # int8/int16/int32/int64(默认)    整型 #float16/float32/float64(默认)     浮点型 # str/string  字符串 # bool 布尔型  # category 分类 # datatime64[ns]  时间戳(纳秒) # period[Y/M/D]   时间周期(年/月/日)  # object python对象混合类型 converters    # dict,默认None,值转换函数 true_values   # list,默认None   传入的list元素列为视为True的值 false_values   # list,默认None   传入的list元素列为视为False的值 )  示例:

daaf74a9685d370e940c272fb409e3b3.png

d375bacc2f3c3f66002bbb5586080d3d.png

7169e11b2b145e9557d17c14e0a6ba3b.png

febd6a04922464f8b7f6e3a24fa7dd19.png

45d6e84701cdf28ad6631f3328a3549a.png

2cdd2afb4f833fa14dd000ec19f340a3.png

c29195654021f9cb2490157227fadf3b.png

6ce80b9b491542193cb079658aadfd0a.png

0af39e1f30685f9918c63d6349c21b63.png

459573efa2a6bb43fad0e7cefcea3632.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值