燕郊做网站找谁,wordpress登录修改,免费行情app,云手机一、问题的提出
现在有如下一个Excel表#xff1a; 上述Excel表中8万多条数据#xff0c;记录的都是三年以来花菜类的销量#xff0c;现在要求按月汇总实现统计每个月花菜类的销量总和#xff0c;如果使用Python的话要给出代码。
二、问题的解决
1.首先可以用透视表的方…一、问题的提出
现在有如下一个Excel表 上述Excel表中8万多条数据记录的都是三年以来花菜类的销量现在要求按月汇总实现统计每个月花菜类的销量总和如果使用Python的话要给出代码。
二、问题的解决
1.首先可以用透视表的方法解决这个问题可能相对简单一些。采用透视表的话我们根据ChatGPT的回答可以采用下面的方法 2. 然后就是采用python中的pandas来解决。这里面涉及到Excel表的读取、清洗、汇总、统计再写入到Excel表。过分析借助于ChatGPT我写了以下代码。如果要想使生成的代码更加准确可以把部分Excel表的内容复制给ChatGPT对话框里然后让它学习并根据我们给出的指令写出Python代码就可以。 有时ChatGPT给出代码可能无法运行而且报错的可能性很大这时我们就把bug信息再回复给它甚至一句话都不要说它给你寻找解决办法并且把最后的修改代码返回来。 多数情况下的问题原因是我们的描述不够清楚造成ChatGPT在理解上有误。这时还要继续追问对代码继续进行修正。比如我第一次提问时让它汇总月度总销量但是后来发现客户要求的是汇总三年中每一个月份的销量这就要对它进一步提问让它对已经生成的代码进行修改 三、代码展示
最终我经过调试、修改、增添写入Excel表的功能最终形成以下带有注释的代码。
import pandas as pd
#读取Excel以第三行为标题
df pd.read_excel(花菜类.xlsx,header2)#找到不规则日期所在行
irregular_date_rows df[~df[销售日期].str.match(\d{4}-\d{2}-\d{2}, naTrue)]#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可能不到十秒就解决了所有的问题非常的快捷和方便。