开学已经一个月了,老师把最近考试成绩发到了微信群里,我用 ChatGPT 简单分析一下

简介: 开学已经一个月了,老师把最近考试成绩发到了微信群里,我用 ChatGPT 简单分析一下

不知不觉开学已经一个月了。今天是星期五,班主任老师把开学一个月来四次数学考试的分数发在了班级群里:

老师发送给家长的成绩图片,是直接对着成绩单用手机拍摄的。成绩单上只有学生的学号。

为了方便汪子熙简单了解自己的成绩在班级里处于什么样的水平,我和他会坐在一起分析一下这些数据。

在 ChatGPT 出现之前,数据分析无非就是用 OCR 工具,把这些图片里包含的数字信息,提取出来,然后粘贴到 Excel 里,在 Excel 里进行各种操作,比如计算总分,按照总分降序排列,按照某一周的分数降序排列,打印总分排列在指定某位同学之前的所有同学的分数等等。

按照我过去的记忆,这些操作做完,再怎么快也要半小时左右——我并不擅长 Excel 操作。比如老师提供的原始图片里,只包含学号,不包含姓名,因此把姓名补充到数据集里,并完成总分求和等操作,需要编辑一些简单的公式。这些公式我很少用,所以老是记不住,每次要用的时候,都要去搜索引擎里查找语法。

有了 ChatGPT 之后,省事多了,从此彻底告别了 Excel,直接用自然语言,向 ChatGPT 发布指令就行了。

以下操作在 ChatGPT 4 中完成。

指令如下:

我给你上传一个图片文件,里面是一个表格,包含五列数据。第一列是班级学生的学号,第二列到第五列,分别是学生第一周到第四周的数学考试分数。请你把这些数字信息从图片中提取出来,保存到 maths.txt 文件中,要求输出的文件里,每一行的学号和分数之间,用一个空格符进行间隔。

ChatGPT 就会自动编写 Python 代码完成这个任务。

点击 Analyzing 的下拉箭头,可以看到它书写的 Python 源代码。我也贴在这里了,感兴趣的朋友可以看一下:

import cv2

import pytesseract

from pytesseract import Output

Load the image from file

image_path = ‘/mnt/data/数学成绩1.jpg’

image = cv2.imread(image_path)

Convert the image to gray scale

gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

Use Tesseract to do OCR on the image

custom_config = r’–oem 3 --psm 6’

data = pytesseract.image_to_data(gray_image, config=custom_config, output_type=Output.DICT)

Extract text information

num_items = len(data[‘text’])

extracted_text = []

for i in range(num_items):

# Extract text if confidence is above a certain threshold to avoid garbage

if int(data[‘conf’][i]) > 50:

extracted_text.append((data[‘left’][i], data[‘top’][i], data[‘text’][i]))

Sort the extracted text based on their vertical (top) position and then by their horizontal (left) position

This should roughly correspond to the ordering of the text in the table.

extracted_text.sort(key=lambda x: (x[1], x[0]))

Output the sorted text

sorted_text = [text[2] for text in extracted_text]

sorted_text

很快 ChatGPT 完成了任务,点击超链接,就可以把包含了四周考试成绩的 text 文件,下载到本地:

maths.txt 文件打开后是这样的:

接下来让 ChatGPT 对这四周的成绩进行求和,然后按照总分从高到低进行排序。指令如下:

我给你上传两个 text 文件,其中 maths.txt 包含了学生的学号,和第一,第二,第三,第四周考试成绩。学号和成绩之间用空格符号分隔。list.txt 文件第一列包含了学生的学号,第二列包含了学生的姓名。学号和姓名之间用空格符号分隔。

现在我把 maths.txt 文件内的数据称为数据集 A,list.txt 文件内的数据称为数据集 B。请你根据数据集 A 和 B 中共有的学生学号值,将两个数据集连接起来,生成一个新的数据集 C,这个数据集 C 增添一个新的列,列值为学生四周的成绩的总和。最后的数据集 C,按照成绩总和从高到低的顺序排序。

很快 ChatGPT 就给出了我想要的数据。班上总分排名第一的一位同学,四次考试总共只丢了 12 分,妥妥的学霸!

对于 ABAP 开发人员来说,上述操作类似使用 OPEN SQL 操作数据库表,不过同 OPEN SQL 有区别的是,我使用的是自然语言,向 ChatGPT 描述我要的结果,它具体如何完成我不关心。ChatGPT 帮我生成了包含学生学号,姓名和总分的新的数据集 C,这个数据集 C 好比 ABAP 里一个新生成的结果内表,我可以继续对其发布指令,任意查看我感兴趣的数据,比如查看总分排名前 20 的名单:

查看最后一次考试也就是前天考试成绩的排名:

实际完成这些分析,总共也就花了五分钟左右,绝大部分时间花在编写指令上,粘贴到 ChatGPT 的指令输入字段,敲回车后,就切换到其他窗口做其他事情了。

而且这个数据分析的需求本身很简单。ChatGPT 的魅力就在于,数据分析的需求越复杂,它能节省的人力就越多。比如要是让我用 Excel 统计,列出这四次考试,分数逐周上升,和分数逐周下降的同学名单,我就不知道怎么完成了。但用自然语言给 ChatGPT 发布指令,就能轻松完成:

并且能够查看到 ChatGPT 实现这个任务使用的 Python 源代码,自己也能从中学习。

相关文章
|
9天前
|
机器学习/深度学习 存储 自然语言处理
ChatGPT原理分析
ChatGPT原理分析
12 1
|
9天前
|
人工智能 自然语言处理
性能超ChatGPT-3.5,专用金融分析的多模态大语言模型
【4月更文挑战第19天】不列颠哥伦比亚大学与Invertible AI合作开发的FinTral模型,是一款专为金融分析设计的多模态大型语言模型,超越ChatGPT-3.5,具备处理文本、数值、表格和图像数据的能力。通过直接偏好优化(DPO)提升性能,FinTral能执行多种金融任务,如情感分析、股票预测等,且在与GPT-3.5和GPT-4的对比中胜出。然而,其金融领域的专注可能限制了其跨领域应用,且依赖准确的实时数据。FinTral为金融分析提供高效工具,提升理解和决策支持的可靠性。
28 1
|
9天前
|
人工智能 自然语言处理
性能超ChatGPT-3.5,专用金融分析的多模态大语言模型
【4月更文挑战第18天】不列颠哥伦比亚大学与Invertible AI联合开发的FinTral模型,是一款专为金融分析设计的多模态大型语言模型,性能优于ChatGPT-3.5。FinTral能整合处理文本、数值、表格和图像数据,通过预训练和直接偏好优化(DPO)提升金融任务处理能力,如情感分析、命名实体识别等。在与GPT-3.5和GPT-4的对比中,FinTral在多项任务中表现出色。尽管有领域特异性和依赖实时数据的局限性,FinTral为金融分析提供了高效准确的解决方案,并减少了幻觉现象,增强决策可靠性。
24 2
性能超ChatGPT-3.5,专用金融分析的多模态大语言模型
|
11月前
|
人工智能 智能硬件
如何在一周内摸清一个行业:ChatGPT + 麦肯锡关键词分析法
如何在一周内摸清一个行业:ChatGPT + 麦肯锡关键词分析法
950 0
如何在一周内摸清一个行业:ChatGPT + 麦肯锡关键词分析法
|
12月前
如何让ChatGPT学习销售过往文字稿,并自动分析话术的优缺点,然后修改?
产品特点、服务优势、目标客户需求和痛点、行业与市场的趋势变化、竞争对手的优劣势、销售场景的特点和要求、销售环境、销售氛围、时间、地点、客户情感需求、心理转态、个性特点、解决方案
269 0
如何让ChatGPT学习销售过往文字稿,并自动分析话术的优缺点,然后修改?
|
6月前
|
机器学习/深度学习 存储 人工智能
【网安AIGC专题11.8】论文15 ChatGPT在软件工程中的全面作用:程序语法(AST生成、表达式匹配) 静态行为、动态分析(数据依赖和污点分析、指针分析) 提示设计(角色提示、指令提示)
【网安AIGC专题11.8】论文15 ChatGPT在软件工程中的全面作用:程序语法(AST生成、表达式匹配) 静态行为、动态分析(数据依赖和污点分析、指针分析) 提示设计(角色提示、指令提示)
78 0
|
7月前
|
机器学习/深度学习 数据采集 自然语言处理
chat GPT数据学习分析应用
ChatGPT是一种强大的自然语言处理模型,可以在数据分析学习阶段提供帮助和支持。在这一阶段,你将学习各种数据分析技术和工具,包括数据清洗、数据可视化、统计分析和机器学习等。ChatGPT可以作为一个交互式的学习工具,帮助你理解和应用这些技术。下面将详细介绍ChatGPT在数据分析学习阶段的应用。 1. 数据清洗和预处理: 数据清洗和预处理是数据分析的第一步,也是最关键的一步。ChatGPT可以帮助你处理和清洗数据,包括缺失值处理、异常值检测和处理、数据格式转换等。你可以与ChatGPT进行对话,告诉它你的数据清洗需求,它可以给出相应的建议和指导。例如,你可以向ChatGPT描述你的数据集中
94 0
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
我失业了?| ChatGPT生信分析初体验
我失业了?| ChatGPT生信分析初体验
86 0
|
7月前
|
Sentinel Python
使用 ChatGPT 和 Python 分析 Sentinel 2 图像
使用 ChatGPT 和 Python 分析 Sentinel 2 图像
46 0
|
10月前
|
人工智能 异构计算
如何客观的分析 ChatGPT技术
如何客观的分析 ChatGPT技术
91 0

热门文章

最新文章