Pandas.read_excel详解

【Python基础】Pandas—read_excel()基本操作 该参数用于指定 DataFrame 的列名,传入字符串列表⭐。 阅读详情

基础知识

pandas 可以读取多种的数据格式,针对excel来说,可以使用read_excel()读取数据,如下:

import pandas as pd
df=pd.read_excel('test_xls')
print(df.head())

在这里插入图片描述
但是,值得注意的是:pandas在读取excel文件的时候需要调用读取第三方库(简称 引擎)

举个不太恰当的例子,张三买车得到了一次砸金蛋的机会,他当然不能用手砸,于是他顺手抄起旁边的锤子就砸了一个金蛋。这个例子里面的张三相当于pandas,金蛋就是excel文件,锤子就是读取文件的引擎。

在pandas中支持四种excel的文件读取引擎,我们用的最多的是"xlrd"和"openpyxl",其中"xlrd"是用来读取".xls"文件的,而"openpyxl"是用来读取".xlsx"及其他07版以后的新格式

其实"xlrd"和"openpyxl"都是python的库,可以单独的安装使用。命令:pip install xlrd

语法

  • sheet_name:如果有多张表,这个参数可以用来指定要读取的表,如果不指定,但有多张表,那么就会读取活动的表(active worksheet)
  • dtype:如果需要指定列的数据类型,则需要用到这个参数。读取文件时每列都会有默认的推断数据类型,但有时推断的会有问题;比如员工的工号如果是纯数字的,就会被推断成int,这样那些0开头的工号就会读取的有问题,这时我们就需要强制将工号列定义为str类型
  • index_col:行索引所在列,详见下面的例子
  • header:列名所在的行,详见后面的例子
  • usecols:指定需要的列,默认所有的列都读取,如果指定其他的列就不读取

参数详解-index_col

在这里插入图片描述
在该代码中,df.head()用来读取数据的前5行,pandas会在读取数据后自动在数据前加一行索引,也就是在YM前面的一列,这个索引一般是用来定位数据的。默认情况下,index_col=None,也就是说默认会添加一列自增的行索引。

如果数据本身有索引列,可以指定第几列为索引,如索引在第一列那我们就写index_col=0,第二列就写index_col=1
在这里插入图片描述
索引可以不唯一,也可以有多层索引(MultiIndex)如果有多层索引,那么index_col需要传入一个数组,如,df=pd.read_excel('test.xls',index_col=[0,1,3])就是说把第一列,第二列,第四列都作为索引

参数详解-header

如果不指定的话默认自动认为第一行列索引,如果一个数据中出现两个列索引,可以使用header来告诉pandas列索引所在的位置,如header=[0,1]就是告诉pandas第一列和第二列都是列索引

参数详解-usecols

如果不想显示某一列,可以使用usecols参数。代码有三种写法

  1. 使用列字母
  2. 使用列的位置序号
  3. 使用列名称
    在这里插入图片描述
    在以上数据中,使用一下代码有相等的效果
df = pd.read_excel("pf.xlsx",usecols=["A,C:E"])
df = pd.read_excel("pf.xlsx",usecols=[1,3,4,5])
df = pd.read_excel("pf.xlsx",usecols=["YM,CJ2,CJ3,CJ4"])

参数详解-dtype

可以用来修改某一列读取的参数类型,一般在数据读取的时候,读到某一列全部是数据,会默认把该列的数据类型定义为int类型,但是,如果遇到数据是0开头的,就会出现问题,因此,可以使用dtype来定义某一列的数据类型为想要的类型,一般是把int类型定义为str类型读取。如一个学号的数据为001,如果不使用dtype,读取的时候,在终端上显示的就是1,如果使用dtype={"学号" : str }后,输出的结果为001

其他参数

  1. na_values:自定义的空值,比如说张三第一学期的语文考试因为某些原因没有靠,成绩那边填写的是“缺考”。那我们就可以设置na_values=[“缺考”],这样导入后张三第一学期的成绩就会自动被识别为pandas的默认空占位符NaN
  2. parse_dates:如果excel表里面的日期列填写的不太规范,可以使用这个参数,告诉pandas哪一列是日期,保证日期格式读取的准确性
  3. true_values:指定真值,比如true_values=[“是”],那么,数据中的”是“就会被识别为True
  4. false_values:指定假值,比如false_values=[“否”],那么,数据中的”否“就会被识别为False

多表读取

接下来让我们来看另一种情况,上面的例子中,Sheet1和Sheet2放置在同一张表的,如果想要区分为两张表,一般方法是可以读两遍read_excel,搭配sheet_name=[表名]参数。

import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches

df1=pd.read_excel('test.xls',sheet_name='Sheet1')
print(df1.head())

df2=pd.read_excel('test.xls',sheet_name='Sheet2')
print(df2.head())

在这里插入图片描述


顺带提一句如何用pandas写数据到excel

import pandas as pd


# pandas 存储数据到excel
def pd_toexcel(data,filename):
    dfData = { # 用字典设置DataFrame所需数据
        '序号':data[0],
        '项目':data[1],
        '数据':data[2]
    }
    df = pd.DataFrame(dfData) # 创建DataFrame
    df.to_excel(filename,index=False) # 存表,去除原始索引列(0,1,2...)



"""--------------数据用例---------------"""
orderIds=[1,2,3]
items=['A','B','C']
myData=[10,20,30]
testData=[orderIds,items,myData]

filename='write.xlsx'
pd_toexcel(testData,filename)


在这里插入图片描述

PS:这里需要用到openpyxl模块

12. Pandas :使用pandas读Excel文件的常用方法 ExcelFile 类。 阅读详情

相关推荐

python的pd.read_excel()函数

如果Excel文件的表头不在第一行,可以通过header参数指定表头所在的行号。通过这个函数,我们可以轻松地将Excel表格中的数据加载到pandas的DataFrame对象中,进而进行各种数据分析和操作。使用read_excel()函数读取Excel文件时,需要指定文件的路径和名称。如果Excel文件中有多个工作表,可以通过sheet_name参数指定要读取的工作表。如果Excel文件没有表头,可以将header参数设置为None,并在读取后手动设置列名。这两个参数可以组合使用,以实现更灵活的数据读取。

changzi990的博客 4373

pandas 读取excel文件

pandas 读取excel文件

tangsiqi130的博客 1万+

Pandas.read_excel() 读取excel 详解 含代码 含测试数据集 随Pandas版本持续更新

Pandas.read_excel() 读取excel 详解 含代码 含测试数据集 随Pandas版本持续更新

数象限 5128

Pandas 中的 read_excel() 读取 excel 数据详细参数用法

Pandas 中的 read_excel() 读取 excel 数据详细参数用法

青年有志 3万+

图像超分辨率在医学影像中的应用:如何用深度学习提升CT/MRI图像质量

本文探讨了深度学习驱动的图像超分辨率技术在医学影像(如CT/MRI)质量提升中的应用。文章分析了医学图像超分辨率在提升诊断信息含量、平衡保真度与临床相关性方面的独特挑战,并详细介绍了如何针对3D体数据特点定制模型架构、设计病理感知损失函数,以及解决高质量配对数据稀缺的策略。通过实战案例,阐述了从数据模拟、模型训练到临床评估的完整流程,旨在为医学影像的清晰化与诊断精准化提供有效解决方案。

weixin_29063681的博客 523

使用同一个时钟源clki,做两个二分频时钟,得到div2_clk1和div2_clk2,这两个时钟都能跟源时钟clki同步,但是div2_clk1和div2_clk2的相位可能是相同的,也可能是反相

比如,触发器1的初始Q为0,而触发器2的初始Q为1(这可能由于芯片制造工艺的微小差异、上电过程的随机性、或没有全局复位信号导致)。这句话的意思是:虽然div2_clk1和div2_clk2都是由同一个妈妈(clki)生出来的,频率也都是妈妈的一半,但它们“起步”的时刻可能不同。所以,上面那段话是在提醒你注意这种潜在的、由分频产生的时钟相位关系的不确定性,这在异步电路设计或时钟管理中是必须考虑的关键因素。结果:div2_clk1和div2_clk2的波形完全重合,它们的上升沿和下降沿都发生在同一时刻。

m0_49540263的博客 592

pandas read_excel 和 to_excel 读写Excel的参数详解

Python 读写 Excel 可以使用 Pandas,处理很方便。但如果要处理 Excel 的格式,还是需要 openpyxl 模块,旧的 xlrd 和 xlwt 模块可能支持不够丰富。Pandas 读写 Excel 主要用到两个函数,下面分析一下 pandas.read_excel() 和 DataFrame.to_excel() 的参数,以便日后使用。 常用参数: to_excel 函数 常用参数:.........

sanylove的博客 1万+

Hyper-V虚拟机 安装 银河麒麟V10桌面版

如何在windows 11 Hyper-V 虚拟机中 安装 银河麒麟V10桌面版。

m0_46756112的博客 3419

pandas常用方法之read_excel详解

指定表头的名称,list内的值跟表的列数要一一对应,即不能多也不能少,多或者少都会抛出ValueError错误: Number of passed names did not match number of header fields in the file。list类型时,元素即可以是int,也可以是str,如:[0, 1, 'Sheet3'],返回值是多个DataFrame的字典。值为str, 默认None。传入其余值时,只显示该值(包括)之前的行,超出行的长度后不报错,有多少行显示多少行。

cnblogs_user的博客 1052

【嵌入式原理系列-第七篇】ld脚本实战:从零构建MCU内存布局

本文是一篇针对嵌入式开发者的实战指南,详细讲解了如何从零开始为MCU编写ld链接器脚本以构建自定义内存布局。文章以STM32F103C8T6为例,深入剖析了MEMORY和SECTIONS指令的用法,并提供了OTA分区、非易失数据存储等高级定制案例,帮助开发者解决实际工程中的Flash与RAM管理难题,实现对程序运行的深度掌控。

weixin_29271263的博客 249

手把手教你用Cadence VPWLF源和参数扫描:搞定非周期激励与gmid曲线绘制(避坑指南)

本文详细介绍了如何在Cadence Virtuoso中使用VPWLF源生成复杂非周期激励信号,并结合gmid方法进行双参数扫描优化电路设计。通过实战案例和避坑指南,帮助工程师高效解决波形生成和参数可视化难题,提升模拟电路设计效率。

weixin_29260291的博客 426

Pandas read_excel()参数详解

Pandas read_excel()参数使用详解 read_excel函数原型 def read_excel(io, sheet_name=0, header=0, names=None, index_col=None, parse_cols=None, usecols=None, squeez

leenuxcore的博客 4万+

卫星遥感影像处理:地物分类与变化检测

卫星遥感影像处理:地物分类与变化检测​ ,人工智能,计算机视觉,大模型,AI,卫星遥感技术通过搭载在卫星上的传感器获取地球表面的电磁波信息,为地物分类与变化检测提供了宏观、动态的观测数据。随着高分辨率遥感卫星(如高分系列、哨兵系列)的发展,遥感影像的空间分辨率、光谱分辨率和时间分辨率不断提升,为精准地物识别和动态变化监测奠定了基础。地物分类旨在将遥感影像中的像元按地表覆盖类型(如植被、水体、建筑、农田等)进行分类,而变化检测则通过对比不同时期的影像,识别地表覆盖的变化区域(如城市扩张、森林砍伐、土地退化等)

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 17万+

python pandas read_excel 参数详解 to_excel 读写Excel

Python 读写 Excel 可以使用 Pandas,处理很方便。但如果要处理 Excel 的格式,还是需要 openpyxl 模块,旧的 xlrd 和 xlwt 模块可能支持不够丰富。Pandas 读写 Excel 主要用到两个函数,下面分析一下 pandas.read_excel() 和 DataFrame.to_excel() 的参数,以便日后使用。 1. pandas.read_excel pandas.read_excel(io,sheet_name=0,header=0,names=No

acoolgiser的博客 7927

基于C++和Qt开发IEC104规约主站调试软件(第二章)

本章节主要讲解iec104主站软件界面设计和从站的连接功能以及部分功能代码的展示。

半青年的博客 860

利用RFIDIOt和NFC进行Hitag2密码暴力破解: Python代码实现

RFID即无线射频识别,是一种通信技术,可以通过无线电信号读取、捕获和保存终端上的信息。这项技术在物流、零售、医疗等领域有着广泛的应用。NFC即近场通信,是一种短距离的高频无线通信技术,允许电子设备之间进行非接触式点对点数据传输。Hitag2是一种常见的RFID标签,广泛应用于汽车防盗系统、门禁系统等。由于其安全性在过去被广泛认可,很多设备都采用了这种标签。但近年来随着密码破解技术的发展,Hitag2的安全性受到了一些挑战。

qq_38334677的博客 1561

详解pandas的read_excel函数

详解pandas的read_excel函数

python伊甸园的博客 7569

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

pandas读取excel文件 pandas.read_excel参数详解

pandas.read_excel(io,sheet_name=0,header=0,names=None,index_col=None,usecols=None,squeeze=False,dtype=None,engine=None,converters=None,true_values=None,false_values=None,skiprows=None,nrows=None,na_values=None,keep_default_na=True,na_filter...

Terry0424的博客 8153

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

pandas系列 read_excel() 和 to_excel()各参数详解

由于在做数据处理,数据分析的时候,免不了读取数据或者将数据转换为相应的处理形式,那么,pandas的read_excel() 和to_excel(),就能给我们很大的帮助,接下来,博主,将 read_excel() 和to_excel()两个方法的定义,进行整合,方便大家进行查阅。 1. read_excel read_excel方法定义: ...

Marlon1993的博客 1万+

python用pandas读取excel_对Python2.7pandas中的read_excel详解

这篇文章主要介绍了关于对Python 2.7 pandas 中的read_excel详解,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下导入pandas模块:import pandas as pd使用import读入pandas模块,并且为了方便使用其缩写pd指代。读入待处理的excel文件:df = pd.read_excel('log.xls')通过使用read_excel函数读...

weixin_40007175的博客 954

pandas库pd.read_excel操作详解

函数用于从Excel文件中读取数据并将其转换为DataFrame对象。这使得我们可以利用pandas库的强大功能来进行数据分析与处理。接下来,我们将详细解释每个参数的作用及应用场景。

weixin_43136158的博客 1万+

pandas.read_excel详解

#coding:utf-8 import pandas as pd import numpy as npfilefullpath = r"/home/geeklee/temp/all_gov_file/pol_gov_mon/downloads/1.xls" #filefullpath = r"/home/geeklee/temp/all_gov_file/pol_gov_mon/downloads

GeekLee的博客 7万+

Pandas.read_excel()全参数详解

pandas.read_excel()的作用:将Excel文件读取到pandas DataFrame中。支持从本地文件系统或URL读取的xls,xlsx,xlsm,xlsb和odf文件扩展名。支持读取单一sheet或几个sheet。我创建了一个excel,用作数据源:sheet1:CRM共39行sheet2:成绩单共50行sheet3:销量表共31行。

weixin_50538485的博客 9268

python read_excel 参数_详解pandas库pd.read_excel操作读取excel文件参数整理与实例

除了使用xlrd库或者xlwt库进行对excel表格的操作读与写,而且pandas库同样支持excel的操作;且pandas操作更加简介方便。首先是pd.read_excel的参数:函数为:pd.read_excel(io, sheetname=0,header=0,skiprows=None,index_col=None,names=None,arse_cols=None,date_parser...

weixin_39877166的博客 2395

pandas read_excel官网详解

pandas read_excel方法官网详解

axsw731的博客 478
上一篇: emumerate 枚举
下一篇: matplotlib使用
@@老胡
博客等级 码龄7年 291粉丝 184原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值