“`python #1.根据班级成绩计算平均分 各班学生成绩平均分 df_averages=p

文章主题:一班, 成绩, 平均分, 88.5
短跑成绩

666ChatGPT办公新姿势,助力做AI时代先行者!

“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

话说天下大势,合久必分,分久必合。

对于数据分析 而言,近几年是实实在在的多事之秋。

首先是顶流Python高举卷王大旗向传统王者VBA抢班夺权,pandas, xlwings、OpenPyXL和Matplotlib等第三方包已经具备VBA和Power Query的几乎所有功能。

然后是ChatGPT席卷而来,语言大模型开始接管一切,改变一切。

8月,微软开启Excel内置Python的Beta测试,Python名正言顺地嵌入Excel,与VBA并驾齐驱。11月1日,微软经过7个多月的测试后,正式发布Microsoft 365 Copilot10月17日,国内金山软件与科大讯飞宣布合作,要在WPS中做中国版的Copilot。

智能分析的理想已经照进现实,真实并且热烈!

01

提示词:追求生成的代码不需修改

ChatGPT可以帮我们写文章、写文案、写诗、画画,才华横溢。但是作为数据分析师,我们让它写代码,并且殷切希望写的代码不需要修改!

如果代码需要修改,对于不懂编程的同学代码是毫无意义的,因为不会改;对于略懂编程的同学,可能调试代码找错花的时间比自己编写用得还多,不划算。

记住,我们追求的目标是让ChatGPT生成的代码不需要修改。

下面结合一个实例介绍用ChatGPT生成pandas代码分析数据的过程。图1所示工作表中A-C列是不同班学生的考试成绩,要求计算各班学生考试成绩的平均分。这是一个分组统计问题。

“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

图1

根据题意编写好ChatGPT的提示词,如下所示:

📚📊数据专家在此!你提供了一个Excel文件路径——`D:/Samples/ch03/02 各班学生成绩.xlsx`,这可是我熟悉的 pandas 数据宝藏!首先,我会使用 `pandas` 的力量加载这个 Excel 文件,选择 “openpyxl” 引擎确保数据无损。🌟“`pythonimport pandas as pd # 导入 pandas 作为数据分析工具# 通过 ‘A:C’ 范围读取数据,班级、姓名和成绩都在这里data = pd.read_excel(D:/Samples/ch03/02 各班学生成绩.xlsx, sheet_name=’第一个工作表’, header=[0,1,2]) # 处理 Excel 文件# 计算各班的平均成绩,保留一位小数average_scores = data.groupby(‘班级’)[‘成绩’].mean().round(1) # 按班级分组并计算平均分数# 现在,我们将这些平均值整理成易于理解的格式class_average = average_scores.reset_index() # 添加索引以便查看班级名class_average.rename(columns={‘成绩’: ‘平均分’}, inplace=True) # 更改列标题为’平均分’# 输出结果,每个班的平均成绩以 ‘班级名称 + 平均分’ 的形式展示for class_name, score in class_average.iterrows(): print(f”{class_name}:{score[‘平均分’]}”) # 每一行都是一个班级的平均分数“`这段代码将精确地完成任务,生成每个班的平均成绩报告。记得给它点个赞哦!😊

ChatGPT软件的外观很简单,类似于图2中的样子。用户只需要在底下的文本框中向ChatGPT提问即可,答案会显示在文本框上方。使用上面的提示词向ChatGPT提问,返回解决本示例问题的pandas代码,如图2中所示。

“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

图2

ChatGPT生成的代码为:

import pandas as pd# 读取Excel文件数据df = pd.read_excel(D:/Samples/ch01/各班学生成绩.xlsx, engine=openpyxl)# 计算各班学生成绩的平均分average_scores = df.groupby(班级)[成绩].mean().round(1)# 输出各班平均成绩for index, value in average_scores.items(): print(f{index}{value})

打开Python IDLE,新建一个脚本文件,将上面生成的代码复制进去,保存到D:/Samples/1.py。运行脚本,在IDLE Shell窗口输出各班的平均成绩。

>>> == RESTART: D:/Samples/1.py =一班 90.6三班 90.1二班 88.9

操作的整个过程不需要用户懂编程,编程的工作ChatGPT帮你做了,真正实现了办公自动化。

点击下图,查看视频实操讲解“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

(点击学习)

02

ChatGPT数据分析

编程语言和工具的选择

Excel数据分析目前可用的编程语言主要有VBA和Python,其中Python又有pandas, xlwings和OpenPyXL等不同的包。Python的这几个包既可以单独完成任务,又可以优化组合,更高效地完成分析任务。

经过大量测试,目前可以肯定的是,ChatGPT生成的Python代码的成功率要大于生成的VBA代码的成功率,写提示词的难度也更小。成功率指的是代码运行不出错,并且正确解决问题。

比如下面是用代码实现中国式排名的例子,同样的数据,生成Python pandas代码的提示词为:

📚📊你是一位Python pandas的大师,文件的家位于路径:D/\Samples/07 数据排名/中国式排名/短跑成绩排名.xlsx。在这个Excel的起始工作表(A1:B8)中,你找到了姓名与’短跑成绩(秒)’的秘密数据对——姓名在A列,成绩在B列。现在,我们将用pandas的力量来解析它,首先以’openpyxl’为引擎,确保数据的精确性。我们将会依据’短跑成绩’进行排名,速度越快,位置越靠前,遵循中国式的排名规则——名次相同的情况下,取最小的名次。这个重要的排名结果将被优雅地添加到最后一列。完成排序后,行数据将以排名顺序展现出众。别忘了,在代码中增添注释,让知识的传播更清晰流畅!🏆🏃‍♂️

生成VBA代码的提示词为:

🌟Excel VBA Pro here! 🔥Given the data in A1:B8 (names and short跑成绩 in columns A and B respectively), with variables named “Name” and “Short Run Time (Sec)” in row 1, let’s rearrange it. 📈Firstly, sort this table by ‘Short Run Time’ in ascending order, getting each athlete’s ranking. The new data will be in E:F for names and times, labeled as “Name” and “Short Run Time (Sec)”. 🔍Each row’s position after sorting is its corresponding rank. For instance, if the sorted list has (1, 2, 3, 4, 5, 6, 7, 8) for runs from 10 to 15, the ranks will be in G. 📈Now, handle ties: If same scores occur, we’ll apply a Chinese-style ranking where the smallest rank is chosen. For instance, if two runners have 11 sec, their ranks will be 2 and 3; for three with 13 sec, they’ll get rank 5 each. 🏆Don’t forget to add insightful comments to your VBA magic! ✨#ExcelRanking #VBASortTies #ChineseRanking

为什么会有这么明显的差异呢?

笔者考虑主要有两点原因。

第一个原因是ChatGPT是用Python写的,大量使用了Python深度学习的包,而这些包跟pandas包是一脉相承的;

第二个原因是pandas包已经封装了很多算法,比如本例中的排名算法,pandas包中直接调用rank方法就可解决,而VBA中需要向ChatGPT详细描述算法,相当于写一个中国式排名算法的伪代码

所以,在VBA和Python之间,我们选择Python。

然后是Python的3个常用包,即pandas, xlwings和OpenPyXL。

工作中常常用pandas包处理数据,用xlwings包和OpenPyXL包做报表,与Excel工作表打交道。

大量实战标明,ChatGPT生成的pandas代码成功率很高,大多数情况下代码不需要修改就可以解决问题。而另外两个包用ChatGPT生成的代码运行时常常出错。

所以,综上,用ChatGPT做数据分析,优先选择Python的pandas包。

03

Excel内置Python:全面支持pandas包

2023年七夕节这天,微软发布了Excel内置Python Beta测试版。Excel内置Python在微软云上运行,不需要用户在计算机上安装Python和第三方包,从而保证大家都使用相同的软件,没有版本问题。

Excel内置Python可以在Excel中以公式的形式使用Python,并且全面支持pandas包。图4演示了在Excel内置Python中用pandas包实现数据分列的效果,使用很方便。

“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

图4

05

Excel内置Python

使用ChatGPT生成的pandas代码

图1对应示例用ChatGPT生成的pandas代码完成了数据分析的任务,这里试图将该代码用于Excel内置Python。要将ChatGPT生成的pandas代码用于Excel内置Python,需要将代码适当作一些修改。主要是数据输入和输出部分需要修改。

在图5所示工作表中,在计算机连接互联网的条件下,在E2单元格中输入“=PY(”,进入Python模式,在公式栏输入下面根据ChatGPT生成的代码修改后得到的代码:

df=xl(“A1:C26”,headers=True)df.groupby(班级)[成绩].mean().round(1)

在公式栏中单击Ctrl+Enter键,E2单元格返回一个Series对象,展开该对象,得到各班的平均成绩,如图5所示。

“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

图5

所以, ChatGPT生成的pandas代码稍作修改就可以用于Excel内置Python,解决数据分析问题。

06

为了让不懂编程的读者也能使用ChatGPT生成代码,轻松实现Excel数据处理自动化,我们基于ChatGPT+Excel+Python超强组合推出了《ChatGPT+pandas数据处理自动化》视频课程!

▼ 点击下图查看更多实操讲解试学“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

(点击进入课程,查看详情)

课程一共47期,带领大家用ChatGPT自动生成代码,实现了数据处理自动化的绝大部分内容,包括数据导入和导出、数据整理、数据预处理、数据统计分析、数据可视化和与Excel工作表交互等。

配合实例讲解,即便你是零基础的小白,跟着操作下来也会成为AI时代的数据处理高手!

不懂编程?ChatGPT帮你编程;懂编程?ChatGPT帮你十倍提升工作效率!为了帮助大家更好的学习了解AI工具,学院菌送大家一张100元的《ChatGPT+pandas数据处理自动化》课程抵扣券,不要焦虑,让AI工具服务于你,大胆的去拥抱这一浪潮!

“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

100元优惠券一定要在1月29日前领取哦~不然就失效啦“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p07

滴滴!如果你是VBA玩家,不用着急!我们同样制作了《ChatGPT+VBA数据处理自动化》视频课程!领取上面的优惠券,本课程可同享立减100元!

▼ 点击下图查看更多实操讲解试学“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

(点击进入课程,查看详情)

最后要强调的是,不管技术如何发展,专业和业务知识始终是根本。对于ChatGPT而言,专业和业务上有深刻认识,思路清晰,才能问出高质量的问题。

希望大家花功夫把基础打好,然后熟练使用ChatGPT等先进技术,如虎添翼。

“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

书课同步 效率翻倍

这里给大家分享一本学习ChatGPT+Excel+Python新知识的好书

《智能分析:ChatGPT+Excel+Python超强组合玩转数据分析》

“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

该书试图让不会编程的你也能借助ChatGPT生成代码,轻松实现Excel数据处理自动化,让你从小白秒变高手;懂编程的你也能收获良多,十倍提升工作效率。

书中用ChatGPT自动生成pandas代码,系统实现了Excel数据处理自动化的绝大部分内容,包括数据导入和导出、数据整理、数据预处理和数据统计分析等。结合xlwings包和OpenPyXL包实现了数据可视化和与Excel工作表交互。

全书对数据分析的知识体系按照面向问题的方式进行了重构,并提供提示词模板120多个。你可以在此基础上建立自己的提示词模板库,并不断丰富。

发布:王一

审核:陈歆懿

如果喜欢本文欢迎 在看留言分享至朋友圈 三连<  PAST · 往期回顾  >“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

“`python
#1.根据班级成绩计算平均分
各班学生成绩平均分
df_averages=p

AI时代,掌握AI大模型第一手资讯!AI时代不落人后!

免费ChatGPT问答,办公、写作、生活好得力助手!

扫码右边公众号,驾驭AI生产力!

相关文章