Pandas + ChatGPT 超强组合,pandas-ai :交互式数据分析和处理新方法

Python Pandas是一个为Python编程提供数据操作和分析功能的开源工具包。这个库已经成为数据科学家和分析师的必备工具。它提供了一种有效的方法来管理结构化数据(Series和DataFrame)。

图片

在人工智能领域,Pandas经常用于机器学习和深度学习过程的预处理步骤。Pandas通过提供数据清理、重塑、合并和聚合,可以将原始数据集转换为结构化的、随时可用的2维表格,并将其输入人工智能算法。

图片

项目地址:https://github.com/gventuri/pandas-ai

技术提升

技术要学会分享、交流,不建议闭门造车。一个人走的很快、一堆人可以走的更远。

本文由技术群粉丝分享,项目源码、数据、技术交流提升,均可加交流群获取,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友

方式①、添加微信号:pythoner666,备注:来自CSDN
方式②、微信搜索公众号:Python学习与数据挖掘,后台回复:加群

使用 pip 安装 Pandas AI

pip install pandasai

使用 OpenAI 导入 PandasAI

在下一步中,我们将导入之前安装的 pandasai 库,然后导入 LLM(大型语言模型)功能。截至 2023 年 5 月,pandasai 仅支持 OpenAI 模型,我们将使用它来理解数据。

import pandas as pd
from pandasai import PandasAI

# Sample DataFrame
df = pd.DataFrame({
    "country": ["United States", "United Kingdom", "France", "Germany", "Italy", "Spain", "Canada", "Australia", "Japan", "China"],
    "gdp": [19294482071552, 2891615567872, 2411255037952, 3435817336832, 1745433788416, 1181205135360, 1607402389504, 1490967855104, 4380756541440, 14631844184064],
    "happiness_index": [6.94, 7.16, 6.66, 7.07, 6.38, 6.4, 7.23, 7.22, 5.87, 5.12]
})

# Instantiate a LLM
from pandasai.llm.openai import OpenAI
llm = OpenAI(api_token="your_API_key")

pandas_ai = PandasAI(llm)
pandas_ai.run(df, prompt='Which are the 5 happiest countries?')
6            Canada
7         Australia
1    United Kingdom
3           Germany
0     United States
Name: country, dtype: object

要使用 OpenAI API,您必须生成自己唯一的 API 密钥。

因为pandas的特性,我们不仅仅可以处理csv文件,我们还可以连接关系型的数据库,例如pgsql:

 # creating the uri and connecting to database
 pg_conn = "postgresql://YOUR URI HERE"
 
 #Query sql database 
 query = """
 SELECT *
 FROM table_name
 """
 
 #Create dataframe named df
 df = pd.read_sql(query,pg_conn)

然后像上面代码一样,我们可以直接与它进行对话了:

 # Using pandas-ai!
 pandas_ai = PandasAI(llm)
 pandas_ai.run(df, prompt='Place your prompt here)

当然,你也可以让 PandasAI 进行更复杂的查询。例如,可以要求 PandasAI 求出 2 个最不幸福国家的 GDP 总和:

pandas_ai.run(df, prompt='What is the sum of the GDPs of the 2 unhappiest countries?')

上面的代码将返回以下内容:

19012600725504

也可以请 PandasAI 画图:

pandas_ai.run(
    df,
    "Plot the histogram of countries showing for each the gpd, using different colors for each bar",
)

图片

最后

ChatGPT、Pandas是强大的工具,当它们结合在一起时,可以彻底改变我们与数据交互和分析的方式。ChatGPT凭借其先进的自然语言处理能力,可以更直观地与数据进行类似人类的交互。而PandasAI可以增强Pandas数据分析体验。通过将复杂的数据操作任务转换为简单的自然语言查询,PandasAI使用户更容易从数据中提取有价值的见解,而无需编写大量代码。

这对于那些还不熟悉Python或pandas操作/转换的人来说是一种编程的新方法。我们不需要为你想要执行的任务编程,而是只是与AI代理交谈,明确的额告诉它想要的结果,代理会将此消息转换为计算机可解释的代码,并返回结果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/19601.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于主从博弈的综合能源服务商动态定价策略研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

在滴滴和字节跳动划水4年,过于真实了...

先简单交代一下吧,沅哥是某不知名211的本硕,18年毕业加入滴滴,之后跳槽到了头条,一直从事测试开发相关的工作。之前没有实习经历,算是四年半的工作经验吧。 这四年半之间他完成了一次晋升,换了一家公司&am…

如何利用python实现灰色关联分析?

1.灰色关联分析简介 灰色系统这个概念是相对于白色系统和黑色系统而言的。从控制论的知识里,颜色一般代表对于一个系统我们已知信息的多少,白色代表信息量充足,黑色代表我们其中的构造并不清楚的系统,而灰色介于两者之间&#xf…

LabVIEWCompactRIO 开发指南18 使用网络流发送消息和命令

LabVIEWCompactRIO 开发指南18 使用网络流发送消息和命令 默认情况下,网络流旨在最大化吞吐量,但可以轻松实现它们以最大化发送命令或消息的低延迟。 为本部分提供LabVIEW示例代码 命令发送器体系结构 命令发送器是CompactRIO控制器必须响应的任何命…

pga_aggregate_limit和process关系

之前部署19c时,配置pga_aggregate_limit都是直接配置成0了,配置processes的大小也比较随意,上周维护一个客户安装的环境,重启数据库数据库时告警了,才第一次认真对面了 SYSorcl1> startup ; ORA-00093: pga_aggreg…

无代码时代来了,程序员会失业吗?不,程序员又不够用了!

有人问我无代码时代来了,程序员会失业吗?太难了,秃了头就算了,连工作也保不住了? 先说观点:并不会 因为,无代码不是真正意义上的无代码。 无代码开发的使用对象是编程小白(我猿是…

Linux篇1

Linux 1. 概述1.1 内容概要1.2 Linux发展1.3 Linux对比Windows 2. 虚拟机下安装CentOS系统2.1 下载安装VMware2.1.1 官网下载VMware软件2.1.2 安装VMware 2.2 下载CentOS镜像2.3 创建虚拟机(在虚拟机中安装CentOS)2.3.1 创建虚拟硬件环境2.3.2 安装CentO…

字典核心底层原理

字典对象的核心是散列表。散列表是一个稀疏数组(总是有空白元素的数组),数组的每个单元叫做bucket。每个bucket有两部分:一个是键对象的引用,一个是值对象的引用。 由于,所有bucket结构和大小一致&#xf…

Linux:rpm查询安装 yum安装

环境: 需要插入安装镜像 镜像内有所需的安装库 我这里使用的虚拟机直接连接光盘 连接的光盘挂载在/dev/cdrom 由于我们无法直接进入,所以选择把/dev/cdrom挂载到别的地方即可 mount /dev/cdrom /123 将/dev/cdrom 挂载到 /123 目录下 Packages下就是…

基于AT89C52单片机的温度检测设计与仿真

点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87770153 源码获取 主要内容: 本设计是基于52系列的单片机进行的设计,可以完成温度的测控,可以实现实际温度与设定温度区域的比较,并在LED上相应的显示结果。设计过程在硬…

sort、uniq、tr、cut命令的使用

sort、uniq、tr、cut命令的使用 一、sort二、uniq三、tr四、cut 一、sort sort是一个以行为单位对文件内容排序的工具,也可以根据不同的数据类型来排序,例如数据和字符的排序就不一样。比较原则是从首字符向后,依次按ASCII码进行比较&#x…

解决chatgpt网络错误,频繁掉线的问题,那就使用KeepChatGPT

文章目录 解决chatgpt出现An error occurred. If this issue persists please contact us through our help center at help.openai.com问题起因对比原作者github地址安装步骤浏览器要求安装油猴安装KeepChatGPT插件使用方法功能栏说明功能说明如下关于 取消审计 功能关于 调整…

C++类与对象Plus

我们之前讲的都是类与对象的基础,以及类中的几个默认函数等,今天我们就讲一下类与对象的其他东西 初始化列表 在我们的默认构造函数的时候,我们在初始化的时候我们都是在构造函数中完成我们的初始化任务 我们现在来看一个类 我们看一下我们…

【C】模拟实现memcpy,memmove内存函数

目录 内存函数模拟实现 1、memcpy模拟实现 2、memmove模拟实现 3、测试案例代码 内存函数模拟实现 C 库函数 memcpy 从存储区 str2 复制 n 个字节到存储区 str1。这个函数在遇到\0的时候并不会停下来。如果str1和str2有任何的重叠,复制的结果都是未定义的。 me…

Selenium技术在CentOS6.8系统的腾讯云服务器上的相关使用(Linux环境下)

目录 一、解释说明二、操作过程中Linux相关命令1、下载谷歌浏览器2、查看谷歌浏览器的版本3、下载对应版本的谷歌驱动(或者本地上传)4、解压下载的文件5、移动下载文件6、给予文件执行权限7、更新pip3到最高版本8、下载Selenium第三方库9、正式测试10、最…

股票K线基础知识1

K线图 K线图是反映价格在某一时间周期内波动情况的图表,它由开盘价、收盘价、最高价、最低价四个要素构成,若当日收盘价高于开盘价,这表明价格处于上涨状态,此时K线图多用红色表示;若当日收盘价低于开盘价&#xff0c…

SSL 证书安装使用中遇到的常见问题

为了实现网站HTTPS加密保护及身份的可信认证,防止传输数据的泄露或篡改,SSL证书已被各政企网站广泛应用。然而在部署和使用SSL证书的过程中,我们经常会遇到一些措手不及的问题,一旦处理不当,就会让网站面临信息被泄漏、…

Python每日一练(20230514) 不同路径 I\II\III UniquePaths

目录 1. 不同路径 I Unique Paths 1 2. 不同路径 II Unique Paths 2 3. 不同路径 III Unique Paths 3 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 1. 不同路径 I Unique Paths 1 一个…

简单随机微分方程数值解

1.随机微分方程求解:dX(t) − αXtdt σdWt 法一:Euler-Maruyama %% %O-U过程 %dX(t)-alpha*Xt*dtsigma*dWt,X|t0X0 %alpha2,sigma1,X01 % 设置初始参数 T 1; % 时间区间长度 N 1000; % 离散化的时间步数 dt T/N; …

创作星-创意大爆发!AI文案生成器让创作轻松快捷,轻松撰写出热门标题。

一、创作星-创意大爆发!AI文案生成器让创作轻松快捷,轻松撰写出热门标题。 ✨使用“创作星”,让AI帮你生成惊艳的文案! ✨创意大爆发!AI文案生成器让创作轻松快捷,轻松撰写出热门标题。 ✨AI文案神器&…