[Pandas] 读取Excel文件

news2024/11/16 13:30:19

练习数据准备

demo.xlsx

demo.xlsx中的工作表Sheet1显示上述的数据,Sheet2没有数据


我们可以使用Pandas中的read_excel()方法读取Excel格式的数据文件,生成DataFrame数据框进行数据分析处理

基本语法格式

import pandas as pd
pd.read_excel(io, sheet_name=0, header=0, names=None, dtype=None)

参数说明

常用参数描述说明
io文件路径
sheet_name访问Excel指定的工作表,默认读取第一个工作表
header指定数据的标题行,也就是数据的列名(如果不指定,默认第一行作为标题行)
names指定列名
dtype指定某字段的数据类型

下面我们对上述常用的参数进行实际运用与讲解 

1.io参数

io为第一个参数,没有默认值,也不能为空,直接执行read_excel()函数会报错

import pandas as pd
# TypeError: read_excel() missing 1 required positional argument: 'io'
pd.read_excel()
import pandas as pd
# 读取demo.xlsx文件数据
df1 = pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx')

df1

2.sheet_name参数

sheet_name可以指定Excel文件读取哪个sheet,如果不指定,默认读取第一个sheet工作表

# 不指定sheetname,默认sheetname=0,读取第一个sheet工作表
# pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx')
df2 = pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx', sheet_name=0)

df2

# 读取demo.xlsx第2个sheet工作表,由于该文件第2个工作表没有数据,所以生成的df3也没有数据
df3 = pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx', sheet_name=1)
'''
Empty DataFrame
Columns: []
Index: []
'''
print(df3)

3.header参数

header参数是用来指定数据的标题行,也就是数据的列名。如果不指定,默认第一行作为标题行(默认header=0是使用第一行数据作为数据的列名)

# 第二行为表头
df4 = pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx', header=1)

df4 

header=1, df4指定使用第二行的英文列名 

我们也可以将参数header的值设置为None,不设置表头

# 不设表头
df5 = pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx', header=None)

df5

4.names参数

用names参数可指定列名,也就是表头的名称,如果不指定,默认为表头的名称

import pandas as pd

df6 = pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx',header=1)

df6

如果数据已经有了列名,names参数将会替换掉原有的列名

import pandas as pd

df6 = pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx',header=1, names=list('ABCDEF')

处理过后的df6

如果只想使用names,而又对源数据不做任何修改,我们可以指定header=None 

import pandas as pd

df6 = pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx',header=None, names=list('ABCDEF')

处理过后的df6

5.dtype参数

用dtype参数可指定某字段的数据类型 

df7 = pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx', header=1)
# dtype('int64')
df7['Q2'].dtype

df7

指定'Q2'字段的数据类型(更改为Object类型)

df7 = pd.read_excel(r'C:\Users\X2001565\Desktop\test\demo.xlsx', header=1, dtype={'Q2': str})
# dtype('O')
df7['Q2'].dtype

处理过后的df7

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/503863.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JVM内存模型介绍

JVM(Java Virtual Machine)又被分为三大子系统,类加载子系统,运行时数据区,执行引擎。在这里我们主要讲解一下JVM的运行时数据区,也就是我们常说的JVM存储数据的内存模型。在这里提一点,平常我们常说内存模型&#xff…

行业趣闻 | 在施工现场“打灰”,挺好的?

房地产市场的不景气对土木行业的冲击、某某大学土木工程专业招不到人、某央企施工人员因吐槽土木行业现状而被辞退…… 面对互联网上诸多对土木行业的调侃和流言,许多土木工程专业的同学变得迷茫了。 这个行业的实际情况究竟是怎样的? 图源网络 2018年10…

Auto-GPT:揭示 ChatGPT、GPT-4 和开源 AI 之间的联系

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、什么是Auto-GPT?二、Auto-GPT 是如何工作的?三、Auto-GPT 能做什么?四、谁制造了 Auto-GPT?五、ChatGPT 或 …

DPDK抓包工具dpdk-dumpcap的使用

在进行网络开发中,我们经常会通过抓包来定位分析问题,在不使用DPDK的情况下,Linux系统通常用tcpdump,windows用wireshark,但是如果我们使用了DPDK来收包,就无法用这两个工具来抓包了。 这个时候我们需要用D…

Linux新字符设备驱动实验

1、新字符设备驱动原理 一、分配和释放设备号 使用 register_chrdev 函数注册字符设备的时候只需要给定一个主设备号即可,但是这样会 带来两个问题: ①、需要我们事先确定好哪些主设备号没有使用。 ②、会将一个主设备号下的所有次设备号都使用掉&#…

多线程(线程同步和互斥+线程安全+条件变量)

线程互斥 线程互斥: 任何时刻,保证只有一个执行流进入临界区访问临界资源,通常对临界资源起到保护作用 相关概念 临界资源: 一次仅允许一个进程使用的共享资源临界区: 每个线程内部,访问临界资源的代码&am…

信息抽取与命名实体识别:从原理到实现

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

STM32-江科大

新建工程 引入启动文件 Start中是启动文件,是STM32中最基本的文件,不需要修改,添加即可。 启动文件包含很多类型,要根据芯片型号来进行选择: 如果是选择超值系列,那就使用带 VL 的启动文件,…

多元统计分析-主成分分析的原理与实现

目录 一、什么是主成分分析? 二、主成分分析的原理 三、主成分分析的应用 四、使用sklearn实现主成分分析 五、总结 一、什么是主成分分析? 主成分分析(Principal Component Analysis,PCA)是一种常用的多元统计分…

Docker部署FAST OS DOCKER容器管理工具

Docker部署FAST OS DOCKER容器管理工具 一、FAST OS DOCKER介绍1. FAST OS DOCKER简介2. FAST OS DOCKER特点 二、本次实践介绍1. 本次实践简介2. 本次实践环境 三、本地环境检查1.检查Docker服务状态2. 检查Docker版本 四、下载FAST OS DOCKER镜像五、部署FAST OS DOCKER1. 创…

理解控制变量、内生变量、外生变量、工具变量

文章目录 前言一、控制变量二、内生变量、外生变量三、工具变量(IV) 前言 1.解释变量(或自变量):解释变量是指作为研究对象,用于解释某个现象或行为模式的变量。其中有些解释变量是直接影响被解释变量的&a…

自学黑客(网络安全),一般人我劝你还是算了吧

一、自学网络安全学习的误区和陷阱 1.不要试图先成为一名程序员(以编程为基础的学习)再开始学习 我在之前的回答中,我都一再强调不要以编程为基础再开始学习网络安全,一般来说,学习编程不但学习周期长,而…

重塑未来:AI对教育行业的深远影响与挑战

自从AI人工智能的发展进入“iPhone时刻”以来,我们已身处一个日新月异的时代。在众多领域,AI已经大放异彩,而教育作为培养下一代的关键领域,自然也受到了这场科技革命的影响。 AI对教育行业重大影响 最近可汗学院(Kh…

图论网络模型及求最小路径和造价实战

学习知识要实时简单回顾,我把学习的图论简单梳理一下,方便入门与复习。 图论网络 图论网络简介 图论起源于 18 世纪。第一篇图论论文是瑞士数学家欧拉于 1736 年发表的“哥尼斯堡的七座桥”。1847 年,克希霍夫为了给出电网络方程而引进了“…

《Netty》从零开始学netty源码(五十五)之PooledByteBufAllocator

PooledByteBufAllocator 通过前面的学习我们大体了解了PooledByteBufAllocator管辖下的数据结构,整体情况如下: PooledByteBufAllocator主要管理了三类内存,堆内存heapArenas、直接内存directArenas、线程缓存PoolThreadCache,前…

Java笔记_18(IO流)

Java笔记_18 一、IO流1.1、IO流的概述1.2、IO流的体系1.3、字节输出流基本用法1.4、字节输入流基本用法1.5、文件拷贝1.6、IO流中不同JDK版本捕获异常的方式 二、字符集2.1、GBK、ASCII字符集2.2、Unicode字符集2.3、为什么会有乱码2.4、Java中编码和解码的代码实现2.5、字符输…

直方图均衡化与规定化原理解释以及matlab实现

直方图均衡化(HE) Histogram Equalization (HE) 设灰度水平在 r k , k ∈ [ 0 , L − 1 ] r_k,k\in[0,L-1] rk​,k∈[0,L−1] 内 一幅图像 f f f 的非归一化直方图定义为 h ( r k ) n k h(r_k)n_k h(rk​)nk​ s T ( r ) sT(r) sT(r)为…

【统计模型】心脏病患病影响因素探究

目录 心脏病患病影响因素探究 一、研究目的 二、数据来源和相关说明 三、描述性统计分析 四、数据建模 4.1 全模型 (1)模型构建 (2)模型预测 4.2 基于AIC准则的选模型A 4.3 基于BIC准则的选模型B 4.4 模型评估 五、结论…

Vector - CAPL - CANoe硬件配置函数 - 02

Hardware Configuration 硬件配置中包含CAN或者CANFD的参数配置,其中包含波特率、时间片1、时间片2、时间量子中的同步跳跃宽度、采样点数等信息;随着研发系统中各类型的平台化,测试想要跟上研发的进度,也必须进行平台化&#xff…

linux【网络编程】之网络套接字预备

linux【网络编程】之网络套接字 一、必备知识1.1 端口号1.2 端口号方面疑问及解决方案 二、TCP/UDP协议三、网络字节流四、socket编程4.1 认识接口4.2 浅析sockaddr结构 一、必备知识 在【网络基础】中我们提到了IP地址,接下来了解一下网络通信中其他方面的知识 1…