1. pandas 操作 Excel 文件的基础方法
使用 read_excel 读取数据
想操作 Excel 文件,第一步就是安装 pandas 和 openpyxl,如果你还没安装的话。这两个库就像老旧但可靠的工具,没有它们你没法进入数据分析的世界。
pip install pandas openpyxl
现在我们可以开始处理表格了。 pandas 提供了一个简单好用的 read_excel 方法,它能把 Excel 文件数据加载到 DataFrame 里——这是 pandas 的标准数据格式。
import pandas as pd
# 从 Excel 文件读取数据
data = pd.read_excel('example.xlsx')
# 展示 DataFrame 的前五行
print(data.head())
就这么简单!我们从 Excel 文件中读取了数据并转换成了 DataFrame。分分钟搞定的数据,以前可能还要打开 Excel 才能看到。
读取数据的参数
read_excel 方法支持很多参数,可以指定读取某个工作表的具体范围,或者指明数据格式等。
-
sheet_name: 指定要读取的工作表名称或者索引(从 0 开始)。比如sheet_name='工作表1'或sheet_name=0。 -
usecols: 指定要导入的具体列。例如,usecols="A:C"只导入前三列。 -
skiprows: 跳过文件开头的N行。这在需要忽略文件开头的标题或无关数据时很有用。
# 读取特定工作表并选择列
data_filtered = pd.read_excel('example.xlsx', sheet_name='工作表1', usecols="A:C", skiprows=2)
2. 将数据转换为 DataFrame
什么是 DataFrame?
DataFrame 就像扫地机器人的核心电子元件:外表看似简单(就是个表格),但它决定了机器人怎么行动,而 DataFrame 决定了数据如何存储和处理。
在 pandas 中,DataFrame 是一种二维的数据结构,有行索引和列标签。相比标准的 Python 列表或 NumPy 数组,DataFrame 更像数据库或者 Excel 中的表格,操作起来更方便。
对 DataFrame 的基本操作
DataFrame 的一个亮点就是,可以非常方便地操作数据。比如,你可以对数据排序、过滤,或者选择特定的行和列。
选择列
根据名字选列,就跟在 Excel 里点击列标题一样简单:
# 选择单列
dates = data['日期']
# 选择多列
subset = data[['姓名', '薪水']]
选择行
若要选行,可以用 iloc 方法按索引选,或者用 loc 按标签选。
# 选择第一行
first_row = data.iloc[0]
# 按条件选择行
high_salary = data[data['薪水'] > 50000]
3. 示例和练习
现在我们已经初步了解了 DataFrame 数据集合的操作,来做点练习吧。假设有个 Excel 文件 data.xlsx,里面有多个工作表,我们想提取某个工作表中的数据,加以处理并打印到控制台。
实践练习
你的任务是:写一个脚本,从文件 data.xlsx 中读取数据,选择工作表 销售,并过滤出销售额超过 1000 的记录。
# 从 '销售' 工作表读取数据并过滤
sales_data = pd.read_excel('data.xlsx', sheet_name='销售')
high_sales = sales_data[sales_data['金额'] > 1000]
print(high_sales)
这个练习可以让你感受到 pandas 的魅力,也让你像一个数据魔术师。虽然没有真正的魔法,但把表格变成有用的信息,这就是数据分析的真正魔力!
4. 错误和实现中的注意点
新手经常会忘记一些细节,比如列名称的大小写或 pandas 默认将第一行当做标题行。如果你的数据有不同的格式,可能会遇到错误。因此,和你的数据保持友好关系:加载文件后用 print(data.columns) 检查一下列名。
还有一个重要点:如果你正在处理大型公司的文件,数据可能会被加密。这时候 pandas 也无能为力了,不过喝杯咖啡、休息一下总能帮助你解决难题!
掌握这些知识后,你可以自动化处理 Excel 数据的日常工作。自动化不仅节省了时间,还能避免手动复制粘贴时的各种麻烦。你的 Python 脚本将成为自动化助理,能快速准备好报告数据。
GO TO FULL VERSION