• 【python基础】利用pandas处理Excel数据


    参考:https://www.cnblogs.com/liulinghua90/p/9935642.html

    一、安装第三方库xlrd和pandas

    1:pandas依赖处理Excel的xlrd模块,所以我们需要提前安装这个,安装命令是:pip install xlrd
    
    2:步骤1准备好了之后,我们就可以开始安装pandas了,安装命令是:pip install pandas

     数据准备,有一个Excel文件:格式为 xls 或 xlsx 或 xlt,表单名分别为:学生信息,人员信息,采购信息

    其中人员信息 的表单数据如下所示:

    首先导入模块:

    import  pandas  as pd

     2:读取Excel文件的几种方式:

    #方法一:默认读取第一个表单
    df=pd.read_excel('lemon.xlsx')
    #默认读取前5行的数据
    data=df.head()
    print("获取到所有的值:
    {0}".format(data))    #格式化输出
    #方法二:通过指定表单名的方式来读取
    #可以通过sheet_name来指定读取的表单
    df=pd.read_excel('lemon.xlsx',sheet_name='人员信息')
    data=df.head()
    print("获取到所有的值:
    {0}".format(data))#格式化输出
    #方法三:通过表单索引来指定要访问的表单,0表示第一个表单
    #也可以采用表单名和索引的双重方式来定位表单
    #也可以同时定位多个表单,方式都罗列如下所示
    df=pd.read_excel('lemon.xlsx',sheet_name=['python','student'])    #可以通过表单名同时指定多个
    # df=pd.read_excel('lemon.xlsx',sheet_name=0)    #可以通过表单索引来指定读取的表单
    # df=pd.read_excel('lemon.xlsx',sheet_name=['python',1])    #可以混合的方式来指定
    # df=pd.read_excel('lemon.xlsx',sheet_name=[1,2])    #可以通过索引 同时指定多个
    data=df.values    #获取所有的数据,注意这里不能用head()方法哦~
    print("获取到所有的值:
    {0}".format(data))#格式化输出

    二、pandas操作Excel的行列

     1 df1=pd.read_excel('201709.xls',sheet_name=0)
     2 # data=df.head()    #默认读取前5行的数据
     3 #跳过表头从第二行开始读取,将每一行内容存放在列表中
     4 #读取指定一行
     5 data = df1.ix[0].values
     6 #读取指定2、3、4行
     7 data = df1.ix[[1,2,3]].values
     8 print(data)
     9 # 读取指定行列,即B2 单元格内容
    10 data = df1.ix[0,1]
    11 print("获取到所有的值:
    {0}".format(data))
    12 #输出姓名列全部内容,返回列表
    13 print("输出姓名列内容
    ",df1['姓名'].values)
    14 # 通过表单索引来指定要访问的表单,0表示第一个表单,1表示第二个表单
    15 df2=pd.read_excel('201709.xls',sheet_name=1)
    16 #读取第一行第二行第三行的姓名、年龄、籍贯 列的值,这里需要嵌套列表
    17 data2 = df2.ix[[0,1,2],['姓名','年龄','籍贯']].values
    18 #获取所有行的指定列
    19 data2 = df2.ix[:,['姓名','年龄','籍贯']].values
    20 #获取行号并打印输出
    21 rows_count = df2.index.values
    22 #获取列名并打印输出
    23 cols_count = df2.columns.values
    24 #获取指定行数的值(行是随机的)
    25 print(df2.sample(3).values)

    三:pandas处理Excel数据成为字典

    1 df2=pd.read_excel('xiong.xls',sheet_name=1)
    2 
    3 rows_data = []
    4 for i in df2.index.values:
    5     row_data = df2.ix[i,['姓名','年龄','民族','籍贯']].to_dict()
    6     rows_data.append(row_data)
    7 
    8 print(rows_data)

    最终打印结果:

    [{'姓名': '小米', '年龄': 21, '民族': '', '籍贯': '北京'}, {'姓名': '王三', '年龄': 32, '民族': '', '籍贯': '河南'}, {'姓名': '李四', '年龄': 22, '民族': '蒙古', '籍贯': '蒙古'}, {'姓名': '小张', '年龄': 25, '民族': '', '籍贯': '四川'}, {'姓名': '思思', '年龄': 23, '民族': '维吾尔', '籍贯': '新疆'}]
  • 相关阅读:
    # IDEA使用技巧
    # 分治算法实例代码
    # 蓝桥杯—开关问题
    PAT 甲级测试题目 -- 1011 World Cup Betting
    PAT 甲级测试题目 -- 1010 Radix
    PAT 甲级测试题目 -- 1009 Product of Polynomials
    PAT 甲级测试题目 -- 1008 Elevator
    PAT 甲级测试题目 -- 1007 Maximum Subsequence Sum
    PAT 甲级测试题目 -- 1006 Sign In and Sign Out
    PAT 甲级测试题目 -- 1005 Spell It Right
  • 原文地址:https://www.cnblogs.com/XJT2018/p/10149079.html
Copyright © 2020-2023  润新知