网络编程
位置:首页>> 网络编程>> Python编程>> python pandas库读取excel/csv中指定行或列数据

python pandas库读取excel/csv中指定行或列数据

作者:Westin_Li  发布时间:2022-10-11 21:05:04 

标签:pandas,行,列

引言

关键!!!!使用loc函数来查找。

话不多说,直接演示:

有以下名为try.xlsx表:

python pandas库读取excel/csv中指定行或列数据

1.根据index查询

条件:首先导入的数据必须的有index

或者自己添加吧,方法简单,读取excel文件时直接加index_col

代码示例:

import pandas as pd                      #导入pandas库

excel_file = './try.xlsx'               #导入excel数据
data = pd.read_excel(excel_file, index_col='姓名')        
#这个的index_col就是index,可以选择任意字段作为索引index,读入数据
print(data.loc['李四'])

打印结果就是

部门 B
工资 6600
Name: 李四, dtype: object
(注意点:索引)

2.已知数据在第几行找到想要的数据

假如我们的表中,有某个员工的工资数据为空了,那我们怎么找到自己想要的数据呢。

代码如下:

for i in data.columns:
   for j in range(len(data)):
       if (data[i].isnull())[j]:
           bumen = data.iloc[j, [0]]                             #找出缺失值所在的部门
           data[i][j] = charuzhi(bumen)

原理很简单,首先检索全部的数据,然后我们可以用pandas中的iloc函数。上面的iloc[j, [2]]中j是具体的位置,【0】是你要得到的数据所在的column

3.根据条件查询找到指定行数据

例如查找A部门所有成员的的姓名和工资或者工资低于3000的人:

代码如下:

"""根据条件查询某行数据"""
import pandas as pd            #导入pandas库

excel_file = './try.xlsx'        #导入文件
data = pd.read_excel(excel_file)      #读入数据

print(data.loc[data['部门'] == 'A', ['姓名', '工资']])     #部门为A,打印姓名和工资
print(data.loc[data['工资'] < 3000, ['姓名','工资']])    #查找工资小于3000的人

结果如下:

python pandas库读取excel/csv中指定行或列数据

若要把这些数据独立生成excel文件或者csv文件:

添加以下代码

"""导出为excel或csv文件"""
#单条件
dataframe_1 = data.loc[data['部门'] == 'A', ['姓名', '工资']]
#单条件
dataframe_2 = data.loc[data['工资'] < 3000, ['姓名', '工资']]
#多条件
dataframe_3 = data.loc[(data['部门'] == 'A')&(data['工资'] < 3000), ['姓名', '工资']]
#导出为excel
dataframe_1.to_excel('dataframe_1.xlsx')
dataframe_2.to_excel('dataframe_2.xlsx')

4.找出指定列

data['columns']  #columns即你需要的字段名称即可
#注意这列的columns不能是index的名称
#如果要打印index的话就data.index
data.columns  #与上面的一样

以上全过程用到的库:

pandas,xlrd , openpyxl

5.找出指定的行和指定的列

主要使用的就是函数iloc

data.iloc[:,:2]  #即全部行,前两列的数据

逗号前是行,逗号后是列的范围,很容易理解

6.在规定范围内找出符合条件的数据

data.iloc[:10,:][data.工资>6000]

这样即可找出前11行里工资大于6000的所有人的信息了

来源:https://blog.csdn.net/weixin_45082522/article/details/106364847

0
投稿

猜你喜欢

  • position属性可以让你让你随意控制一个特定元素在浏览器何处以及如何显示。比方说我们用position:fixed 让一个图片显示在浏览
  • 摆线最简单的旋轮线就是摆线,指圆在直线上滚动时,圆周上某定点的轨迹。设圆的半径为 r ,在x轴上滚动  x距离则意味着旋转了 x
  • 下面是Sql Server 和 Access 操作数据库结构的常用Sql,如如何新建一个表,如何删除表,如何删除数据,插入数据等等..希望对
  • 本文实例讲述了PHP基于phpqrcode类生成二维码的方法。分享给大家供大家参考,具体如下:使用PHP语言生成二维码,还是挺有难度的,当然
  • 今天出于需要,要将爬虫爬取的一些数据整理成二维数组,再编码成json字符串传入数据库那么问题就来了,在php中这个过程很简便 ,类似这样:
  • 如果遇到下述错误,表示当启动mysqld时或重新加载授权表时,在用户表中发现具有非法密码的账户。发现用户'some_user'
  • 背景客户最近有这样的需求,想通过统计Oracle数据库活跃会话数,并记录在案,利用比对历史的活跃会话的方式,实现对系统整体用户并发量有大概的
  • 本文实例讲述了php版银联支付接口开发的方法。分享给大家供大家参考,具体如下:支付接口现在有第三方的支付接口也有银行的支付接口。这里就来介绍
  • 这篇文章主要介绍了python 矢量数据转栅格数据代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要
  • ChainMap是Python collections模块中的一个成员,它用来将多个map组合到一起。Chain是链条的意思,字面意思就是把
  • 看代码吧~class ConvNet(nn.module):    def __init__(self, num_cla
  • 说明1、当函数的参数太多,需要简化时,使用functools.partial可以创建一个新的函数。2、这个新的函数可以固定原始函数的部分参数
  • python爬虫用mongodb的原因:1、文档结构的存储方式简单讲就是可以直接存json,list2、不要事先定义”表”,随时可以创建3、
  • 一、前情提要为什么要使用Scrapy 框架?前两篇深造篇介绍了多线程这个概念和实战多线程网页爬取多线程爬取网页项目实战经过之前的学习,我们基
  • 网站改版,如何改?如果只是设计、功能和栏目等的稍微变动,这些很简单,从技术 上说并没有多少难度。只是对于网站本身的发展来说,没有多大的作用,
  • MySQL从5.1开始支持event功能,类似oracle的job功能。有了这个功能之后我们就可以让MySQL自动的执行数据汇总等功能,不用
  • Juan Pablo De Gregorio  的 原文很多人都问我如何为一本杂志、一份报纸、一张海报、一份简报或是一份出版物选择
  • 本文实例为大家分享了Python实现俄罗斯方块游戏的具体代码,供大家参考,具体内容如下玩法:童年经典,普通模式没啥意思,小时候我们都是玩加速
  • 最近参与了将一个Sybase数据库移植到Microsoft SQL Server 2000上的项目,我在这一项目上获得的经验,将对Sybas
  • 自 PHP 5.4.0 起,PHP 实现了代码复用的一个方法,称为 traits。Traits 是一种为类似 PHP 的单继承语言而准备的代
手机版 网络编程 asp之家 www.aspxhome.com