PandasAI:Python中的人工智能数据分析工具

在数据分析领域,经常需要花费大量时间编写代码来排序、筛选或分组数据以获取所需信息。是否有更快捷、更轻松的方法来提取信息呢?如果能与数据集对话,直接向它提问,让它为分析数据,岂不是更加方便?PandasAI就是这样一个工具,它是一个扩展了Pandas功能的Python库,通过集成生成性AI能力,使得数据框的交互更加人性化,有效总结数据。

开始使用PandasAI

要开始使用PandasAI,需要一个OpenAI API密钥,可以通过以下链接生成。这将使能够访问OpenAI的大型语言模型(LLM)。

学习目标

在本文中,将学习如何:

  • 从OpenAI网站获取OpenAI API密钥。
  • 使用PandasAI库连接到OpenAI LLM模型。
  • 编写提示,使AI能够生成探索性数据分析结果。

什么是LLM?

LLM代表大型语言模型,它是一种旨在理解和生成类似人类文本的人工智能(AI)模型。想象一下语言模型是一个计算机程序,它经过大量文本的训练,这些文本来自书籍、文章、网站等。这种训练使模型能够学习人类语言的模式、语法和上下文。

当与语言模型交互时,例如最近流行的ChatGPT,可以用自然语言提供提示或问题。然后模型使用其对语言的理解生成相关和连贯的回应。像LLM这样的语言模型的主要目的是帮助用户以更类似人类的方式理解和生成文本。它可以用于广泛的应用,包括回答问题、提供信息、编写故事、总结文本、翻译语言等。

简而言之,LLM的目标是模仿人类语言理解和表达,使用户能够以更直观和自然的方式与AI系统交互。

Python中使用PandasAI

让来看一个PandasAI的实际用例。首先,将使用以下命令下载PandasAI库。

!pip install pandasai

接下来,将生成OpenAI API密钥并稍后保存。

import pandas as pd from pandasai import PandasAI from pandasai.llm.openai import OpenAI

在这个演示中,将使用奥运会数据集,该数据集包含了120年的运动员信息。如果想跟随操作,可以在这里下载数据集。

奥运会数据集

下载奥运会数据集后,现在来读取它。

df = pd.read_csv("athlete_events.csv")

数据集包含了关于运动员、他们的国籍、性别、参赛年龄、他们参加的运动、是否获得奖牌以及他们参加的奥运会事件的信息。

要开始探索数据集,将通过首先使用之前生成的OpenAI API密钥初始化OpenAI LLM对象来调用PandasAI对象。

llm = OpenAI(api_token='Your API Key') pandas_ai = PandasAI(llm)

终于准备好“对话”数据集,并向它提问以从奥运会数据中获得洞察。

探索数据集

让找出哪位运动员参加了最多的奥运会事件。为此,运行创建的pandas_ai变量,并输入数据集名称和提示。

prompt = "Which athlete appeared in the most olympics years and how many" pandas_ai.run(df, prompt=prompt)

输出:“参加奥运会年份最多的运动员是Ian Millar,他参加了10次。”

注意:由于数据集定期更新,输出可能会有所不同。最好验证得到的答案是否正确。通常通过按运动员姓名对数据进行分组并计算每位运动员的参与年份的总唯一值来做到这一点。可以看到AI给出了正确的答案。

df.groupby(by='Name')['Year'].nunique().sort_values(ascending=False)

PandasAI有潜力彻底改变不断发展的数据分析领域。如果是一名主要关注从数据中提取洞察并根据用户需求生成图表的数据分析师,那么这个库可以帮助以极高的效率自动化这个过程。然而,使用PandasAI时需要注意一些挑战:

  • AI对提示的解释在很大程度上决定了获得的结果,有时可能无法提供预期的答案。例如,在奥运会数据集中,AI有时会在“奥运会”和“奥运赛事”之间感到困惑,导致可能不同的回应。
  • PandasAI不能用作数据处理应用程序的工具,例如数据收集和转化为可用信息。
  • 它也不适合大数据分析
  • 目前,PandasAI的Python应用有限,不能用作Pandas库的替代品。
  • 看到了PandasAI从数据框中直接检索信息作为会话回答甚至作为可视化的惊人能力。这无疑有助于通过自动化数据探索过程等来提高生产力。
  • 然而,不能忽视Pandas库执行复杂操作、数据插补等在DataFrame上的能力。
  • 需要注意的是,尽管PandasAI是一个强大的工具,但它仍然不能取代Pandas库的广泛功能。
Q1. PandasAI如何工作?
A1. PandasAI使用先进的机器学习算法分析数据,提取模式并进行预测。它处理数据框,自动化清洁、转换和建模等任务,增强数据驱动的决策制定。
Q2. 什么是PandasAI?
A2. PandasAI是基于Pandas库的创新AI工具。它通过自动化任务简化数据分析,使数据科学家和分析师能够高效地操纵、探索和建模数据,从而加速洞察。
Q3. Pandas AI的用途是什么?
A3. PandasAI简化了数据处理,使用户能够轻松地预处理、分析和可视化数据。其自动化能力加快了重复性任务,使其成为寻求高效数据驱动解决方案的研究人员、分析师和企业的宝贵工具。
Q4. Pandas AI是开源的吗?
A. 是的,PandasAI是开源的。它免费提供其功能,允许开发人员、数据科学家和研究人员访问和贡献其代码库,促进数据分析和AI领域的合作和创新。
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485