用Pandas轻松搞定Excel数据提取:新手也能学会的Python技巧

用Pandas轻松搞定Excel数据提取:新手也能学会的Python技巧

大家好!今天我要分享一个超级实用的Python技巧------如何用pandas库从Excel文件中提取我们需要的数据列。这个技能在工作中特别有用,比如处理学生成绩表、客户名单等Excel数据时,可以快速获取关键信息。

准备工作:安装必要的库

首先,我们需要确保电脑上安装了pandas库。如果你还没安装,只需要在命令行输入:

bash 复制代码
pip install pandas openpyxl

这里openpyxl是用来处理Excel文件的依赖库。

代码解析:一行一行来看

让我们仔细看看图片中的代码,我会用最通俗的方式解释每一行的作用:

python 复制代码
# 导入pandas库
import pandas as pd

这行代码就像是在对Python说:"嘿,我要用pandas这个工具包了,给我准备好!"pandas是Python中处理表格数据的利器。

python 复制代码
# 紧凑显示
pd.set_option('display.max_rows', 10)

这行代码设置了显示选项,意思是"当数据太多时,最多只显示10行,其他的用省略号表示"。这样我们的输出就不会在控制台刷屏了,看起来更清爽。

python 复制代码
# 读文件数据
df = pd.read_excel('ClassScore.xls', index_col='学号')

这是最关键的一步: • pd.read_excel是读取Excel文件的函数 • 'ClassScore.xls'是我们的文件名 • index_col='学号'表示把"学号"这一列作为每行的标识(索引)

想象一下,这就像是在Excel中把"学号"列设置为了第一列,方便我们查找。

python 复制代码
name = df['姓名']

这行代码从数据中提取了"姓名"这一列,相当于在Excel中选中了整个姓名列。

python 复制代码
# 输出姓名列
print(name)

最后,我们把姓名列打印出来,就能看到整洁的学生名单了!

实际效果

运行这段代码后,你会看到类似这样的输出:

yaml 复制代码
学号
2301    张三
2302    李四
2303    王五
...
2418    赵六
Name: 姓名, dtype: object

中间的"..."表示省略了一些行,这正是我们设置的紧凑显示效果。

常见问题解答

Q:为什么我的代码报错了? A:可能的原因有:

  1. 文件不在当前目录下(解决方法:使用完整文件路径)
  2. 文件名拼写错误(检查大小写和扩展名)
  3. 列名不匹配(确认Excel中确实有"学号"和"姓名"列)

Q:如何显示更多/更少的行? A:修改display.max_rows的值即可,比如设为5就是只显示5行。

Q:能不能同时显示多列? A:当然可以!比如要显示学号和姓名:

python 复制代码
print(df[['学号', '姓名']])

小技巧分享

  1. 在Jupyter Notebook中运行这段代码,效果更直观
  2. 可以用df.head()快速查看前几行数据
  3. 添加encoding='utf-8'参数可以避免中文乱码问题

总结

通过这个简单的例子,我们学会了:

  1. 用pandas读取Excel文件
  2. 设置紧凑显示
  3. 提取特定列数据
  4. 输出整理后的结果

这个技能就像是一个数据处理的"瑞士军刀",简单但超级实用。掌握了它,你就能快速从各种表格中提取需要的信息,再也不用手动复制粘贴了!

如果你觉得这篇教程有帮助,欢迎点赞收藏。下次我会分享更多pandas的实用技巧,比如数据清洗、统计分析等进阶内容。有什么问题也可以在评论区留言哦!

相关推荐
焗猪扒饭9 小时前
redis stream用作消息队列极速入门
redis·后端·go
树獭非懒10 小时前
AI大模型小白手册|Embedding 与向量数据库
后端·python·llm
IT_陈寒12 小时前
SpringBoot实战:5个让你的API性能翻倍的隐藏技巧
前端·人工智能·后端
梦想很大很大13 小时前
拒绝“盲猜式”调优:在 Go Gin 项目中落地 OpenTelemetry 链路追踪
运维·后端·go
唐叔在学习13 小时前
就算没有服务器,我照样能够同步数据
后端·python·程序员
用户685453759776914 小时前
同步成本换并行度:多线程、协程、分片、MapReduce 怎么选才不踩坑
后端
javaTodo14 小时前
Claude Code 记忆机制详解:从 CLAUDE.md 到 Auto Memory,六层体系全拆解
后端
LSTM9714 小时前
使用 C# 和 Spire.PDF 从 HTML 模板生成 PDF 的实用指南
后端
JaguarJack15 小时前
为什么 PHP 闭包要加 static?
后端·php·服务端