使用Python进行excel的数据简单分析

Python代码,需要将处理后分析得到的数据存储到与当前目录下的一个Excel文件中去。

完整的Python代码(初):

python 复制代码
import pandas as pd
import os

# 读取Excel文件
file_path = '供应链分析.xlsx'
excel_data = pd.ExcelFile(file_path)

# 读取相关的两个工作表
procurement_df = pd.read_excel(excel_data, '采购中标信息表')
sales_df = pd.read_excel(excel_data, '订单信息表')

# 对"订单信息表"中的"年度"进行筛选,只保留"2024"年的数据
sales_df = sales_df[sales_df['年度'] == 2024]

# print(sales_df)

# 提取"订单信息表"中"商品编号"、"销售数量"两列数据
sales_df = sales_df[['商品编号', '商品名称', '销售数量']]

# print(sales_df)


# # 分别从"采购中标信息表"和"订单信息表"中提取"商品编号"、"商品名称"、"销售数量"两列数据
# procurement_df = procurement_df[['商品编号', '商品名称', '采购数量']]
# sales_df = sales_df[['商品编号', '销售数量']]


# # 合并两个DataFrame
# summary_df = pd.merge(procurement_df, sales_df, on='商品编号', how='outer').fillna(0)
#
# # 计算每一个商品编号的"采销匹配度",采销匹配度=采购数量/销售数量
# summary_df['采销匹配度'] = (summary_df['采购数量'] / summary_df['销售数量']).round(2)



# # 分别从"采购中标信息表"和"订单信息表"中提取"采购数量"、"销售数量"两列数据
procurement_df = procurement_df[['商品编号', '采购数量']]
# sales_df = sales_df[['商品编号', '销售数量']]

# 对同一商品编号的采购数量进行汇总
procurement_summary = procurement_df.groupby('商品编号')['采购数量'].sum().reset_index()

# 将汇总结果与"订单信息表"合并
sales_summary = pd.merge(sales_df, procurement_summary, on='商品编号', how='left').fillna(0)

# print(sales_summary)


# 计算每一个商品编号的"采销匹配度",采销匹配度=采购数量/销售数量
sales_summary['采销匹配度'] = (sales_summary['采购数量'] / sales_summary['销售数量']).round(2)
print(sales_summary)

# 将结果保存到新的Excel文件
# 获取文件名(不包括路径)
base_name = os.path.splitext(os.path.basename(file_path))[0]

# 构建新的文件名
output_file_path = f"{base_name}---分析.xlsx"


# 将数据保存到一个名为"采销分许"的工作簿中
with pd.ExcelWriter(output_file_path) as writer:
    sales_summary.to_excel(writer, sheet_name='采销分许', index=False)
    print(f"数据已保存到{output_file_path}中。")

上面的代码运行环境为MacOSPython3.12,成功的运行后,会在终端打印初需要分析计算的数据结果。同时,在与当前Python文件的同一目录下生产了一个"excel文件名-分析.xlsx"新的Excel文件,并且在这个文件中的工作簿"采销分析"中存储了我们分析计算后得到的数据信息。

相关推荐
CAE3208 小时前
基于机器学习的智能垃圾短信检测超强系统
人工智能·python·机器学习·自然语言处理·垃圾短信拦截
MarcoPage9 小时前
Python 字典推导式入门:一行构建键值对映射
java·linux·python
一晌小贪欢13 小时前
【Html模板】电商运营可视化大屏模板 Excel存储 + 一键导出(已上线-可预览)
前端·数据分析·html·excel·数据看板·电商大屏·大屏看板
ζั͡山 ั͡有扶苏 ั͡✾14 小时前
从零搭建 Data-Juicer:一站式大模型数据预处理与可视化平台完整教程
python·data-juicer
SkylerHu15 小时前
tornado+gunicorn部署设置max_body_size
python·tornado·gunicorn
独行soc15 小时前
2025年渗透测试面试题总结-234(题目+回答)
网络·python·安全·web安全·渗透测试·1024程序员节·安全狮
木头左16 小时前
年化波动率匹配原则在ETF网格区间选择中的应用
python
清空mega16 小时前
从零开始搭建 flask 博客实验(3)
后端·python·flask
毕设源码-朱学姐16 小时前
【开题答辩全过程】以 海水水质监测大数据分析为例,包含答辩的问题和答案
数据挖掘·数据分析
程序员小远16 小时前
7个常见的Jmeter压测问题
自动化测试·软件测试·python·测试工具·测试用例·压力测试·性能测试