分享

python对excel操作获取某一列,某一行的值,对某一列信息筛选

 Four兄 2019-08-24

在此使用的包是pandas,因为其可以同时处理xls和xlsx两种excel文件。

使用pd读取有多个sheet的excel

pandas读取的常用格式pd.read_excel(file, sheet_name),其中sheetname可以使用数字进行替代,从0开始,默认为0

pandas写入的格式为data.to_excel('filename',sheet_name='A')

处理的excel信息如下:

在这里插入图片描述
在这里插入图片描述
代码如下:

import pandas as pdpath = 'G:\动力系\新建文件夹\什么.xls'data = pd.read_excel(path,None)#读取数据,设置None可以生成一个字典,字典中的key值即为sheet名字,此时不用使用DataFram,会报错print(data.keys())#查看sheet的名字for sh_name in data.keys(): print('sheet_name的名字是:',sh_name) sh_data = pd.DataFrame(pd.read_excel(path,sh_name))#获得每一个sheet中的内容 print(sh_data)
  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

结果:
在这里插入图片描述
1559525116375

获得某一行,某一列的值

pd对excel的相关基本操作看下面的链接

https://blog.csdn.net/weixin_43245453/article/details/90056884

数据使用的是第一个sheet

import pandas as pdpath = 'G:\动力系\新建文件夹\什么.xls'data = pd.DataFrame(pd.read_excel(path))#读取数据,设置None可以生成一个字典,字典中的key值即为sheet名字,此时不用使用DataFram,会报错print(data.index)#获取行的索引名称print(data.columns)#获取列的索引名称print(data['姓名'])#获取列名为姓名这一列的内容print(data.loc[0])#获取行名为0这一行的内容
  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

结果:
在这里插入图片描述
1559525504692

对某一列的信息进行筛选

筛选使用的是data.loc[列名称 = 提取的信息]

假如我要提取院系下面的动力,代码如下:

import pandas as pdpath = 'G:\动力系\新建文件夹\什么.xls'data = pd.DataFrame(pd.read_excel(path))#读取数据,设置None可以生成一个字典,字典中的key值即为sheet名字,此时不用使用DataFram,会报错result = data.loc[data['院系'] == '动力']#获取列明为院系,内容为动力的内容print(result)
  • 1

  • 2

  • 3

  • 4

  • 5

结果如下:
在这里插入图片描述

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多