【Python办公自动化】用Pandas库自动化操作Excel

153 篇文章 2 订阅
82 篇文章 5 订阅
本文详细介绍了如何使用Python的Pandas库进行Excel文件的读写、数据选择、过滤、数据处理、合并以及数据透视表的创建,通过实例展示了Pandas的强大功能,适用于数据科学和自动化操作。
摘要由CSDN通过智能技术生成

前言

Python的第三方Pandas库是数据处理和分析中的利器,其强大的功能可以帮助我们轻松地对Excel表格进行自动化操作。接下来,我们将介绍九个用Pandas库操作Excel的编程例子,并且每个例子都会涉及不同的知识点,确保全面掌握这个主题。

1. 读取和写入Excel文件

首先,我们需要了解如何使用Pandas读取、写入Excel文件。这可以通过pd.read_excel()、df.to_excel()方法来实现。

import pandas as pd
# 通过字典形式构建DataFrame
df = pd.DataFrame({
    '工号': [1001,1002,1003],
    '姓名': ['张三', '李四', '王五'],
    '年龄': [28, 25, 30]
})
df = df.set_index('工号')#自定义索引
df.to_excel('人事信息.xlsx')#写入excel
df = pd.read_excel('人事信息.xlsx')#读取excel
print(df)
#输出结果:
     工号  姓名  年龄
0  1001  张三  28
1  1002  李四  25
2  1003  王五  30

2. 选择特定列数据

要选择Excel表格中的特定列数据,可以使用DataFrame的列索引进行选择。

# 选择Name列数据
names = df['姓名']
print(names)
#输出结果:
0    张三
1    李四
2    王五

3. 选择特定行数据

使用df.loc[]方法可以选择特定行数据。

# 选择第一行数据
first_row = df.loc[0]
print(first_row)
#输出结果:
工号    1001
姓名      张三
年龄      28

4. 过滤数据

Pandas还可以根据条件过滤数据。

# 过滤年龄大于25的行
filtered_data = df[df['年龄'] > 25]
print(filtered_data)
#输出结果:
     工号  姓名  年龄
0  1001  张三  28
2  1003  王五  30

5. 添加新列

通过给DataFrame赋值,可以添加新列。

# 添加新列
df['籍贯'] = ['广东', '广西', '湖南']
print(df)
#输出结果:
     工号  姓名  年龄  籍贯
0  1001  张三  28  广东
1  1002  李四  25  广西
2  1003  王五  30  湖南

6. 删除行或列

使用df.drop()方法可以删除行或列。

# 删除年龄列
df = df.drop('年龄', axis=1)
print(df)
#输出结果:
     工号  姓名  籍贯
0  1001  张三  广东
1  1002  李四  广西
2  1003  王五  湖南

7. 修改数据

可以通过索引直接修改数据。

# 修改第一行第一个元素为'陈六'
df.loc[0, '姓名'] = '陈六'
print(df)
#输出结果:
     工号  姓名  籍贯
0  1001  陈六  广东
1  1002  李四  广西
2  1003  王五  湖南

8. 合并Excel表格

Pandas可以合并多个Excel表格数据。

# 读取另一个Excel文件
df2 = pd.read_excel('example2.xlsx')

# 合并两个DataFrame
merged_df = pd.concat([df, df2])
print(merged_df)

9. 数据透视表

使用Pandas可以生成数据透视表。

# 生成数据透视表
import pandas as pd
# 创建销售数据集
data = {'日期': ['2024-04-01', '2024-04-02', '2024-04-02', '2024-04-02', '2024-04-03'],
        '产品': ['苹果', '香蕉', '苹果', '香蕉', '苹果'],
        '销售额': [1000, 1500, 800, 1200, 1500]}
df = pd.DataFrame(data)
# 显示数据集
print(df)
pivot_table = df.pivot_table(index='日期', columns='产品', values='销售额', aggfunc='sum')

# 显示数据透视表
print(pivot_table)
#数据结果:
产品              苹果      香蕉
日期                        
2024-04-01  1000.0     NaN
2024-04-02   800.0  2700.0
2024-04-03  1500.0     NaN

通过以上九个例子,我们学会了如何使用Python的Pandas库对Excel表格进行自动化操作。从读取、写入到数据处理和分析,Pandas提供了丰富的功能,为数据科学工作提供了便利。希望这些例子能帮助你更好地掌握Pandas库在Excel操作中的应用!


这里给大家分享一份Python全套学习资料,包括学习路线、软件、源码、视频、面试题等等,都是我自己学习时整理的,希望可以对正在学习或者想要学习Python的朋友有帮助!

零基础Python学习资源介绍

👉Python学习路线汇总👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取哈)

在这里插入图片描述

👉入门学习视频👈

👉实战案例👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

在这里插入图片描述

👉100道Python练习题👈

检查学习结果。

👉面试刷题👈

在这里插入图片描述

在这里插入图片描述

资料领取

这份完整版的Python全套学习资料已为大家备好,朋友们如果需要可以微信扫描下方二维码添加,输入"领取资料" 可免费领取全套资料有什么需要协作的还可以随时联系我朋友圈也会不定时的更新最前言python知识。↓↓↓
或者

点此链接】领取

  • 17
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: import pandas as pd# Create a Pandas dataframe from some data. df = pd.DataFrame({'Data': [10, 20, 30, 20, 15, 30, 45]})# Create a Pandas Excel writer using XlsxWriter as the engine. writer = pd.ExcelWriter('pandas_dynamic.xlsx', engine='xlsxwriter')# Convert the dataframe to an XlsxWriter Excel object. df.to_excel(writer, sheet_name='Sheet1')# Get the xlsxwriter objects from the dataframe writer object. workbook = writer.book worksheet = writer.sheets['Sheet1']# Add some cell formats. format1 = workbook.add_format({'bold': True, 'font_color': 'red'}) format2 = workbook.add_format({'num_format': '#,##0.00'})# Set the column width and format. worksheet.set_column('B:B', 15, format1)# Close the Pandas Excel writer and output the Excel file. writer.save() ### 回答2: import pandas as pd # 创建一个空的Excel文件 excel_writer = pd.ExcelWriter('dynamic_excel_file.xlsx') # 创建一个动态的数据集合 data = [[1, 'A'], [2, 'B'], [3, 'C']] df = pd.DataFrame(data, columns=['Column 1', 'Column 2']) # 将数据写入Excel文件的第一个sheet中 df.to_excel(excel_writer, sheet_name='Sheet1', index=False) # 创建另一个动态的数据集合 data2 = [[4, 'D'], [5, 'E'], [6, 'F']] df2 = pd.DataFrame(data2, columns=['Column 1', 'Column 2']) # 将数据写入Excel文件的第二个sheet中 df2.to_excel(excel_writer, sheet_name='Sheet2', index=False) # 保存并关闭Excel文件 excel_writer.save() excel_writer.close() 以上代码使用pandas创建了一个空的Excel文件,并生成了两个动态的数据集合。然后,将这些数据集合分别写入Excel文件的不同sheet中。最后,保存并关闭Excel文件。 ### 回答3: 使用Pythonpandas,可以很方便地生成动态Excel文件。下面是一个示例代码: 首先,需要安装pandas: ```python pip install pandas ``` 然后,导入pandas并创建一个dataframe: ```python import pandas as pd data = {'姓名': ['张三', '李四', '王五'], '年龄': [20, 25, 30], '性别': ['男', '女', '男']} df = pd.DataFrame(data) ``` 接下来,使用pandasExcelWriter类,创建一个Excel文件对象,并将dataframe写入其中: ```python writer = pd.ExcelWriter('output.xlsx', engine='xlsxwriter') df.to_excel(writer, sheet_name='Sheet1', index=False) ``` 可以通过指定不同的sheet_name参数,写入不同的工作表。 然后,可以对生成的Excel文件进行进一步的修改,比如添加表头、设置格式等: ```python workbook = writer.book worksheet = writer.sheets['Sheet1'] header_format = workbook.add_format({'bold': True, 'bg_color': '#F0F0F0'}) worksheet.set_row(0, 20, header_format) writer.save() ``` 最后,使用writer.save()保存Excel文件。 以上就是使用pandas生成动态Excel文件的基本代码。通过pandas的强大功能,可以进行更多复杂的操作,比如合并单元格、设置公式等。可以根据具体需求进一步扩展代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值