借助ChatGPT使用Pandas实现Excel数据汇总

一、问题的提出

现在有如下一个Excel表:

上述Excel表中8万多条数据,记录的都是三年以来花菜类的销量,现在要求按月汇总实现统计每个月花菜类的销量总和,如果使用Python的话要给出代码。

二、问题的解决

1.首先可以用透视表的方法解决这个问题,可能相对简单一些。采用透视表的话,我们根据ChatGPT的回答,可以采用下面的方法:

  1. 然后就是采用python中的pandas来解决。这里面涉及到Excel表的读取、清洗、汇总、统计,再写入到Excel表。过分析,借助于ChatGPT我写了以下代码。如果要想使生成的代码更加准确,可以把部分Excel表的内容复制给ChatGPT对话框里,然后让它学习,并根据我们给出的指令写出Python代码就可以。

有时,ChatGPT给出代码可能无法运行,而且报错的可能性很大,这时,我们就把bug信息再回复给它,甚至一句话都不要说,它给你寻找解决办法,并且把最后的修改代码返回来。

多数情况下的问题原因是我们的描述不够清楚,造成ChatGPT在理解上有误。这时还要继续追问,对代码继续进行修正。比如我第一次提问时,让它汇总月度总销量,但是后来发现客户要求的是汇总三年中每一个月份的销量,这就要对它进一步提问,让它对已经生成的代码进行修改:

三、代码展示

最终,我经过调试、修改、增添写入Excel表的功能,最终形成以下带有注释的代码。

python 复制代码
import pandas as pd
#读取Excel,以第三行为标题
df = pd.read_excel("花菜类.xlsx",header=2)

#找到不规则日期所在行
irregular_date_rows = df[~df['销售日期'].str.match('\d{4}-\d{2}-\d{2}', na=True)]

#print("不规则日期所在行:",irregular_date_rows)

# 删除不规则日期的行
df = df.drop(irregular_date_rows.index)

# 转化日期格式
df['销售日期'] = pd.to_datetime(df['销售日期'])

# 创建一个新列 '销售月份',用于存储销售日期的月份信息
df['销售月份'] = df['销售日期'].dt.month
df['销售年份'] = df['销售日期'].dt.year

#使用 groupby 和 sum 计算每个月的销售量总和
#monthly_sales = df.groupby('销售月份')['求和项:销量(千克)'].sum()

#使用 groupby 和 sum 计算每年每个月的销售量总和
monthly_sales = df.groupby(['销售年份', '销售月份'])['求和项:销量(千克)'].sum()

# 打印结果 monthly_sales
monthly_sales.to_excel("求和项.xlsx")

下面是统计后的结果:

四、学后反思

  1. ChatGPT解决Excel问题可以直接贴表格,给的代码不一定能用,关键是提问时表述一定要问清楚。如果报错,就让它继续排bug,如果要修改就可以利用它的上下文功能继续给它指令,让它添加功能。

  2. Python和ChatGPT为解决现实的统计问题提供了多元的方法,比如这个8万多条记录如果用Python可能不到十秒就解决了所有的问题,非常的快捷和方便。

相关推荐
shandianchengzi2 小时前
【记录】Excel|Excel 打印成 PDF 页数太多怎么办
pdf·excel
bin91534 小时前
【EXCEL数据处理】000010 案列 EXCEL文本型和常规型转换。使用的软件是微软的Excel操作的。处理数据的目的是让数据更直观的显示出来,方便查看。
大数据·数据库·信息可视化·数据挖掘·数据分析·excel·数据可视化
一个散步者的梦12 小时前
Excel常用函数
excel
奈斯。zs19 小时前
yjs11——pandas运算
人工智能·python·机器学习·pandas
bin915321 小时前
【EXCEL数据处理】000009 案列 EXCEL单元格数字格式。文本型数字格式和常规型数字格式的区别
大数据·前端·数据库·信息可视化·数据分析·excel·数据可视化
学习前端的小z1 天前
【AIGC】ChatGPT提示词解析:如何打造个人IP、CSDN爆款技术文案与高效教案设计
人工智能·chatgpt·aigc
Darling_001 天前
Pandas -----------------------基础知识(六)
pandas
柚子+1 天前
读取h5ad文件
pandas
Eiceblue1 天前
Python保留数据删除Excel单元格的函数和公式
开发语言·python·excel
bin91531 天前
【EXCEL数据处理】000014 案例 EXCEL分类汇总、定位和创建组。附多个操作案例。
信息可视化·数据挖掘·数据分析·excel·数据可视化·数据图表·excel 数据分析