page contents

分享10个Python Excel自动化脚本,一定有你用得上的!

在日常工作和学习中,我们经常需要处理Excel文件(.xlsx),Python提供了强大的库如pandas和openpyxl,让我们能够轻松地进行数据分析、处理和自动化操作。本文将分享10个使用Python编写的Excel自动化脚本,以帮助新手小白快速上手。

attachments-2024-11-mOtg82bQ673a9ac6bd127.png在日常工作和学习中,我们经常需要处理Excel文件(.xlsx),Python提供了强大的库如pandas和openpyxl,让我们能够轻松地进行数据分析、处理和自动化操作。本文将分享10个使用Python编写的Excel自动化脚本,以帮助新手小白快速上手。

1. 读取Excel文件

import pandas as pd

# 读取Excel文件

def read_excel(file_path):

    df = pd.read_excel(file_path)

    return df

data = read_excel('example.xlsx')

print(data.head())  # 打印前5行数据解释

该脚本使用pandas库读取Excel文件并打印出前五行数据。这是任何数据分析任务的第一步,对于程序员来说,学会如何加载数据是非常重要的;而对于普通用户,如在工作中查看报表,这种方法也很实用。

2. 写入数据到Excel文件

# 将数据写入新的Excel文件

def write_to_excel(data, output_file):

    df = pd.DataFrame(data)

    df.to_excel(output_file, index=False)

data_to_write = {

    '姓名': ['张三', '李四', '王五'],

    '成绩': [85, 90, 78]

}

write_to_excel(data_to_write, 'output.xlsx')

print("数据写入成功!")解释

这个脚本将一个字典数据写入到新的Excel文件中。在实际应用中,当你需要将计算结果或汇总数据保存为报告时,这个功能非常有用。

3. 数据筛选

# 根据条件筛选数据

def filter_data(df, column_name, condition):

    filtered_df = df[df[column_name] > condition]

    return filtered_df

data = read_excel('example.xlsx')

filtered_data = filter_data(data, '成绩', 80)

print("筛选后的数据:")

print(filtered_data)解释

该脚本从Excel文件中筛选出“成绩”大于80的记录。这在分析数据时非常常见,比如想要找出表现优异的学生名单。

4. 数据合并

# 合并多个Excel文件

def merge_excel(files, output_file):

    dfs = [pd.read_excel(file) for file in files]

    merged_df = pd.concat(dfs, ignore_index=True)

    merged_df.to_excel(output_file, index=False)

merge_excel(['file1.xlsx', 'file2.xlsx'], 'merged_output.xlsx')

print("文件合并成功!")解释

此脚本合并多个Excel文件的数据到一个新的文件中。这在汇总不同部门的报告时尤其方便,可以快速整合信息。

5. 删除重复项

# 删除Excel中的重复行

def remove_duplicates(df):

    return df.drop_duplicates()

data = read_excel('example.xlsx')

cleaned_data = remove_duplicates(data)

cleaned_data.to_excel('cleaned_output.xlsx', index=False)

print("已删除重复项,结果保存成功!")解释

该脚本从Excel数据中删除重复的行。对于维护数据的完整性和准确性来说,这是一个非常重要的步骤,常用于清理数据集。

6. 统计数据

# 统计某列的平均值

def calculate_average(df, column_name):

    return df[column_name].mean()

data = read_excel('example.xlsx')

average_score = calculate_average(data, '成绩')

print(f"成绩的平均值是: {average_score}")解释

这个脚本计算Excel文件中“成绩”列的平均值。进行数据分析时,获取基本统计信息是必要的,无论是开发者还是普通用户都需要了解整体趋势。

7. 绘制图表
import matplotlib.pyplot as plt
# 绘制柱状图
def plot_bar_chart(df, column_name):
    df[column_name].value_counts().plot(kind='bar')
    plt.title(f'{column_name} 的频次分布')
    plt.xlabel(column_name)
    plt.ylabel('频次')
    plt.show()
data = read_excel('example.xlsx')
plot_bar_chart(data, '成绩')解释
这个脚本绘制关于“成绩”的柱状图,帮助我们可视化数据分布情况。通过图表展示数据,更容易理解结果,适用于报告或者会议资料中。
8. 更新Excel单元格
# 更新指定单元格的内容
def update_cell(file_path, sheet_name, row, column, new_value):
    df = pd.read_excel(file_path, sheet_name=sheet_name)
    df.iloc[row, column] = new_value
    df.to_excel(file_path, sheet_name=sheet_name, index=False)
update_cell('example.xlsx', 'Sheet1', 0, 1, 95)  # 更新第1行第2列的值
print("单元格更新成功!")解释
该脚本更新Excel文件中特定单元格的内容。比如,如果发现学生的成绩需要修改,这个功能非常高效,避免了手动逐个检查的麻烦。
9. 格式化Excel文件
from openpyxl import load_workbook
from openpyxl.styles import Font
# 格式化Excel文件的标题行
def format_header(file_path):
    wb = load_workbook(file_path)
    ws = wb.active
    for cell in ws[1]:  # 假设标题在第一行
        cell.font = Font(bold=True, color='FF0000')  # 设置字体加粗和红色
    wb.save(file_path)
format_header('example.xlsx')
print("标题行格式化成功!")解释
该脚本对Excel文件的标题行进行格式化,设置字体为加粗并变为红色。这在制作专业报告时非常重要,有助于提升文档的可读性和美观性。
10. 生成透视表
# 生成透视表
def create_pivot_table(df, index_column, values_column):
    pivot_table = df.pivot_table(index=index_column, values=values_column, aggfunc='mean')
    return pivot_table
data = read_excel('example.xlsx')
pivot = create_pivot_table(data, '班级', '成绩')
pivot.to_excel('pivot_table_output.xlsx')
print("透视表生成成功!")解释
该脚本根据给定的分类生成透视表,计算各班级的成绩均值。透视表是一种强大的数据分析工具,能帮助用户快速总结和分析数据,是数据分析师必备的技能之一。
以上就是10个实用的Python Excel自动化脚本示例,希望能帮助你在Excel的数据处理上提高效率!通过这些简单的实例,你可以看到Python处理Excel文件的强大能力,也希望启发你进一步探索的兴趣!

更多相关技术内容咨询欢迎前往并持续关注好学星城论坛了解详情。

想高效系统的学习Python编程语言,推荐大家关注一个微信公众号:Python编程学习圈。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Python入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。

attachments-2022-05-rLS4AIF8628ee5f3b7e12.jpg

  • 发表于 2024-11-18 09:41
  • 阅读 ( 88 )
  • 分类:Python开发

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
小柒
小柒

1658 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1658 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章