抓紧收藏我尝试测试和评估了60个数据科学的ChatGPT提示

#头条创作挑战赛#

 

我为数据科学评估了60个ChatGPT功能,使用这些提示并请ChatGPT为你编写和解释代码,优化数据科学代码。它还可以解释数据科学概念,提出想法,和解决问题,写Python。

1. 训练分类模型

提示:我希望你扮演数据科学家的角色,为我编写代码。我有一个数据集,它包含[描述数据集]。请构建一个能预测[目标变量]的机器学习模型。

ChatGPT提供了好的代码(它可以运行!):

提供训练-测试分割初始化了AutoML分类器将其拟合到AutoML分类器导出分类器我一点都不惊讶ChatGPT在这里表现优秀,因为这些代码基本上只是样板代码。这些代码可以直接从文档中复制粘贴过来。

3. 调整超参数

提示:我希望你扮演数据科学家的角色,为我编写代码。我训练了一个[模型名称]。请编写代码调整超参数。

在这里,ChatGPT提供的代码符合Python中我的正则表达式要求。

然而,请注意,我已经挑选了这个例子。在此之前,我尝试让ChatGPT创建更复杂的其他正则表达式模式,但是它失败了。即使在解释正则表达式时,它看上去非常自信,但是它生成的正则表达式并不能工作。

7. 训练时间序列

提示:我希望你扮演一个数据科学家的角色,为我编写代码。我有一个时间序列数据集[描述数据集]。请构建一个能预测[目标变量]的机器学习模型。请使用[时间范围]作为训练集,使用[时间范围]作为验证集。

ChatGPT使用了imblearn库编写了随机对数据集进行下采样和过采样的样板代码。

这段代码是没有问题的,但我会对它对过采样和欠采样的理解提出一些挑剔的意见。

欠采样和过采样只应在训练数据集上进行。它不应该在包括测试数据集在内的整个数据集上进行。否则,评估将在一个不再反映真实数据集实际分布的重采样测试集上进行。

因此,它应该尝试首先将数据集分割为训练集和测试集,然后再进行欠采样和过采样。

9. 获取特征重要性

提示:我希望你扮演一个数据科学家,并解释模型的结果,我已经训练了一个决策树模型,我希望找到最重要的特征,请写出代码。

11. 使用Matplotlib可视化图像网格

提示:我希望你扮演一个编码员的角色,我有一个图片文件夹,[描述目录中文件的组织方式] [描述你希望如何打印图像]

同样,ChatGPT能提供使用Matplotlib绘制图像网格的正确代码。

同样,我提供了复杂且长的指示,但是ChatGPT能够一丝不苟地遵循它们。(我个人很讨厌使用Matplotlib创建图表。它非常灵活,但是在它上面编写代码是相当痛苦的。)

12. 用Lime解释模型

提示:我希望你扮演一个数据科学家,并解释模型的结果。我已经训练了一个[库名]模型,我希望使用LIME来解释输出。请写出代码。

ChatGPT提供了使用LimeTabularExplainer解释模型的代码,并使用正确的命令解释了一个实例。

个人来说,我觉得这很有帮助,因为我不需要参考文档来获取样板代码。总的来说,ChatGPT提供了准确的代码,没有违反任何原则。

13. 使用Shap解释模型

提示:我希望你扮演一个数据科学家,并解释模型的结果。我已经训练了一个scikit-learn XGBoost模型,我希望使用Shap的一系列图表来解释输出。请写出代码。

这个简单的命令导致了一个简单的函数。在这里,ChatGPT展示了它将人类语言转化为适当的函数和参数的能力。

17. 编写单元测试

提示:我希望你扮演一个软件开发者。请为函数[插入函数]编写单元测试。测试用例是:[插入测试用例]

18. 验证列

提示:我希望你扮演一个数据科学家。请编写代码来测试我的pandas数据框是否满足[插入要求]

19. 解释Python

提示:我希望你扮演一个代码解释员。这段代码在做什么?[插入代码]

代码的格式化整齐且正确,缩进和大小写都正确。

31. 在数据库管理系统之间进行翻译

提示:我希望你扮演一个编码员,并为MySQL编写SQL代码,PostgreSQL的DATE_TRUNC在MySQL中的等效项是什么?

这是一个正确的翻译!然而,请注意这是一个非常直接的函数。ChatGPT可能在更复杂的代码块上会失败。

33. 将R翻译成Python

提示:我希望你扮演一个代码翻译员,你能把下面的R代码转换成Python代码吗?[插入代码]

35. 向本科生解释

提示:我希望你扮演一个数据科学导师,向一个本科生解释[概念]。

答案不仅正确而且简洁,而且还附带了相关信息(不同类型的约束)和代码片段。

我在这里的一个提示是,为了得到更全面的答案,可以明确地要求ChatGPT提供代码片段、样例表格和输出。

39. 提出边缘情况

提示:我希望你能像一个软件开发者一样行动,请帮我捕捉这个函数的边缘情况[插入函数]

即使我没有明确要求,它甚至提供了一行代码来授予文件必要的权限。

然而,请注意,我从所有编写Shell命令的提示中挑选出了这个例子。特别是,当我要求ChatGPT递归地从文件夹复制文件时,它给出了一个无法执行的错误输出。为它辩护的是,它能够纠正自己的代码(参见上文的“47. 纠正自己的ChatGPT代码”)。

56. 编写VBA

提示:我希望你能像一个Excel VBA开发者一样行动。你能编写一个VBA [在这里插入函数]吗?杂项

57. 格式化表格

提示:我希望你能像一个文档格式化者一样行动。请把以下内容格式化成一个漂亮的表格,让我放在Google文档中?[在这里插入文本表格]

输出结果不言自明。它能够把我从网上复制的一个表格转化成一个格式良好的表格。然而,ChatGPT无法为表格提供任何定制。我要求它改变颜色和字体,但它做不到。

58. 概括书籍

提示:我希望

你能像一个技术书籍概括者一样行动,你能用5个主要观点概括一下[名字]这本书吗?

Knaflic的书是一个关于数据讲故事技巧的宝库。我个人觉得这个总结过于笼统,没有足够捕捉到这些技巧。

59. 概括论文

提示:我希望你能像一个学者一样行动。请用简单的语言在一段中概括这篇论文[…]。

我要求ChatGPT概括一个相对较旧的论文“从神经网络中提取知识”。它能够以相对直接、无行话的方式解释最重要的概念。

然而,请注意,这是可能的,因为有足够多的人写了关于上述论文的评论或总结。对于不那么流行的论文,它可能无法做好总结。

此外,ChatGPT对2021年之后的世界没有理解。因此,它无法帮助你理解新的论文。

60. 提供情绪支持

提示:我希望你能为我提供情绪支持,[在这里说明问题。]

好的,我不是心理学家,所以我不认为我有资格来评判这个。即便如此,我个人认为这是一个既有同情心又实际的回应。它也展现出对数据科学过程的良好理解。结语

ChatGPT在解释事物和提供模板代码方面表现出色。然而,当涉及到调试或创建复杂代码片段时,它就显得力不从心了。

ChatGPT会取代数据科学家吗?不,我不这么认为。至少目前还不会。然而,使用ChatGPT的人可能会。

我希望这些提示对你有所帮助!它确实帮助了我。

如果你喜欢这个,我会每天分享数据科学的技巧和内容。关注我在Medium和LinkedIn上的更多内容。