用ChatGPT 处理复杂 Excel 数据并进行数据分析 您所在的位置:网站首页 vba复制sheet到另一个sheet 用ChatGPT 处理复杂 Excel 数据并进行数据分析

用ChatGPT 处理复杂 Excel 数据并进行数据分析

2023-06-12 02:27| 来源: 网络整理| 查看: 265

用ChatGPT 处理复杂 Excel 数据的方法

由于目前 ChatGPT 还不支持上传文件以及对大数据量的处理,

所以我们只能换一种思路结合 Excel 和 ChatGPT 的协作

整体思路

我们告诉 ChatGTP 我们想要实现什么样的效果,

让 ChatGPT 告诉我们结果、公式 和 vba 代码,

我们直接按照 ChatGTP 给出的方法执行就行

接下来我们还是通过一个案例来进行讲解

数据案例

我们使用数据,大约30条,数据如下:

希望通过数据分析出什么

这是一次活动推销的结果的数据,希望通过分析数据:

a.需要分析出哪些维度对推销结果的影响最大

b.如何确定银行定期产品推销中最具价值的客户

c.优化的建议有哪些

d.实行完优化建议后,预期的效果会是什么样

清理无用数据的方法

一般我们会先把垃圾数据删掉,比如:恶意填写、错填、漏填的数据。

我喜欢把表格中的无效数据称为:unknown

清理无效数据的方法如下

发送给 ChatGPT:

我有一个 microsoft excel 文件,如果每一行任意一列中包含了 unknown 的数据,那么就把这一行删除掉,使用 vba 代码实现,不需要解释代码

(VBA :通过这种代码可以实现 Excel 的复杂逻辑)

ChatGPT 回复:

如果不会用 VBA 代码,

可以发送给 ChatGPT: 如何在 microsoft excel 中使用这段 vba 代码

ChatGPT 回复如下:

您可以按以下步骤在 Microsoft Excel 中使用 VBA 代码:

打开 Excel 文件,按下 Alt+F11 进入 Visual Basic 编辑器。

在左边的“项目”窗口中,双击您要向其添加代码的工作簿,然后在新窗口中插入一个新的模块。

在新模块中,复制上面给出的 VBA 代码。

回到 Excel 工作表,按下 Alt+F8 打开宏窗口。

选择您刚刚添加的代码,并单击“运行”按钮。

当代码运行完成后,将关闭 Visual Basic 编辑器并返回 Excel 工作表。请检查您的数据集以确定未知值是否已被删除。

请注意,运行 VBA 代码可能会直接修改您的 Excel 文件,因此在运行代码之前,请务必备份您的数据集。

接下来我们把 VBA 代码按照使用方式复制到 VBA 编辑框中

点击:执行

最后我们关闭这个 vba 编辑框,

可以发现我们的数据已经清理干净,

没有 unknown 的数据了

维度分析

同样我们告诉 ChatGPT

希望让它按照维度来帮我们分析,并告诉我们该怎么做

比如我们希望先分析一下年龄、学历和资产余额维度这几个维度对推销结果的影响最大,

那我们可以

发送给 ChatGPT:

这个 excel 是一次营销活动的数据,目的是为了分析哪些维度对推销结果的影响最大,请先根据年龄、学历和资产余额维度进行分析哪个维度对推销结果的影响最大,写一段 vba 代码用于分析结果,并将结果放在 Sheet2,如果 Sheet 2 不存在需要通过 vba 代码创建,不要解释代码的意思,我是 mac Microsoft excel,需要考虑到代码的兼容性,请使用比较简洁的代码编写。

下面列出了数据的结构和对应的解释

"""

Feature Description

age 年龄(数值)

job 职业(分类:admin, bluecollar, entrepreneur, housemaid, management, retired, self-employed, services,student, technician, unemployed, unknown)

marital 婚姻状况(分类:divorced, married, single, unknown)

education 学历(分类:primary, secondary, tertiary and unknown)

default 失信状况(分类:yes, no)

balance 资产余额(数值)

housing 房屋贷款(分类:yes, no, unknown)

loan 个人贷款(分类:yes, no, unknown)

contact 联系方式(分类:cellular, telephone)

day 最后一次电话营销的日期(数值:月份中的哪一天)

month 最后一次电话营销的月份(分类:jan, feb, mar, apr,…,nov, dev)

duration 通话时长(数值:以秒为单位,0的话最终输出结果必然是0)

campaign 联系次数(数值:此活动中联系该客户的次数)

pdays 距上次联系完客户后的天数(数值:999代表未联系过该客户)

previous 这次活动前与这位客户联系的次数(数值)

poutcome 上次营销的结果(分类:yes, no, unknown)

deposit 定期存款(分类:yes, no)客户是否已购买定期存款

ChatGPT 回:

同样,

在 Excel 中按下 Alt+F11 ,我们把代码放入到 Excel 中的 VBA 编辑框

最后我们在 Sheet 2 中

就可以得到分析出来的结果

看不懂数据怎么办?

我们在来问问 ChatGPT

发送给 ChatGPT:

分析出来的有四列,Feature Mean Variance Standard Deviation 解释一下都代表什么意思

ChatGPT回:

Feature: 数据的特征,即所分析的维度

Mean: 平均值,是该特征所有样本值的总和除以样本个数,它可以表示该特征的集中趋势。

Variance: 算术平均数与各观察值偏差平方和的算术平均数。也就是说,每个数值与特征平均值的差值的平方之和的平均值,可以反映出样本的离散程度。

Standard Deviation:标准差是更常用的的用以衡量变量之间的差异性的统计量。简单的说,标准差是方差的算术平方根。标准差越小,则表示从平均数开始,每个数据都比较接近平均水平。反之,则表示很多数据离平均水平较远。

可视化分析

前面 ChatGPT 分析出来的结果是表格形式不易理解,

也不清楚哪个维度影响最大,

如果我们也不知道该如何可视化进一步分析,那我们可以接着问:

发送给 ChatGPT:

你认为该以什么样的图形化展示比较好

ChatGPT回:

根据这三个维度的数据,可以采用多条柱形图(Multi-Bar Plot)进行可视化展示,将每个维度的平均值、标准差分别绘制成一条柱形,并按大小排序,以便于观察哪个维度对推销结果的影响最大。另外,也可以考虑使用散点图(Scatter Plot)进行可视化展示,将每个样本的三个维度的值展示在平面坐标系中,以便于观察每个样本在三个维度上的分布情况和特征之间的关系。

希望进一步分析,再发送给 ChatGPT:

那基于 Sheet2 分析出来的数据,使用 多条柱形图 进一步分析出来哪一个维度对推销结果的影响最大,并以图形在 Sheet3 展示,如果 Sheet3不存在请自行创建;请用比较简洁的 vba 代码实现

ChatGPT 回:

同样,在 Excel 中按下 Alt+F11 ,我们把代码放入到 Excel 中的 VBA 编辑框

最后,

我们可以得到 Sheet3 的可视化表

基于分析结果得出结论

当 ChatGPT 生成了可视化的分析,

进一步让 ChatGPT 帮我们分析出来结论

发送给 ChatGPT:

这是分析出来的结果,解释分析一下

"""

Feature Mean Standard Deviation

age 42.47619048 18.35

education 3.047619048 1.45

balance 22080.95238 34856.84

ChatGPT 回:

根据 Sheet2 分析的数据结果,我们可以得出如上的表格。

Feature: 数据的特征,即所分析的维度,包括 age, education 和 balance。

Mean: 该维度所有样本值的平均值,代表该特征的集中趋势。

Standard Deviation: 标准差是用以衡量变量之间的差异性的统计量,表示该特征的样本数据的离散程度。

通过对比不同特征的标准差,我们可以判断不同特征对推销结果的影响,标准差越大,说明该特征对推销结果的影响越大。

结合上表,我们可以发现 balance 的标准差远大于其他两个特征,因此,资产余额这一特征对推销结果的影响最大。

提出优化建议和预测

有了分析出来的结论后,那

可以让 ChatGPT 给出优化的建议,并且预测数据

发送给 ChatGPT:

a.基于这个结果,给出优化建议

b.列出几个可行的措施

c.如果落实了这几个措施,会对结果产生多大影响,用一句话总结,并给出一个大致的比例

总结

基于上述案例我们做了什么?

我们可以再次让 ChatGPT 帮我们总结

发送给 ChatGPT:

分析一下这次的对话,列出步骤

ChatGPT 回:

以下是这次对话的步骤:

第一个问题的提出:用户提出了一个 Excel 相关的问题和需求。

第一个问题的回答:AI 帮助回答了用户的第一个问题。

第二个问题的提出:用户向 AI 提出了一个新的问题和需求,希望得到一段 VBA 代码,实现对 Excel 文件中的数据进行筛选。

第二个问题的回答:AI 给出了一段简洁的 VBA 代码来实现用户的需求。

第三个问题的提出:用户向 AI 提出了另一个需求,希望根据年龄、学历和资产余额这三个维度进行分析,以便找出哪个维度对推销结果的影响最大。

第三个问题的回答:AI 根据用户的需求给出了一段 VBA 代码,并解释了代码的作用,同时也提供了多条柱形图和散点图的可视化方式,以便更好地展现和分析数据。

对分析结果的解释和优化建议:AI 解释了根据分析结果得出的结论,并提供了可行的几个措施来优化推销的效果。

对落实措施的影响进行分析:AI 对采取措施后推销成功率的提高进行了预测。

ChatGPT 和 Excel 的协议可以说非常的强大,

但前提是需要我们准确的告诉 ChatGPT 应该做什么,以什么的格式去做,

特别是对于 Excel 的术语(比如第一行,第一列、第一个Sheet... 等)

因为 ChatGPT 没办法知道计算出来的结果是什么,

所以我们希望 ChatGPT 基于什么样的结果进行分析时,

则需要把通过代码算出来的结果再次告诉 ChatGPT。

注意事项

在对话的过程中可能会出现字数超长的情况,

可以尝试把已经无用的代码记录删除掉



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有