暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

用PostgreSQL或polardb pg开源版, 结合Scikit Learn与matplotlib进行可视化数据挖掘分析

原创 digoal 2023-06-14
403

背景

泽鹏开源的PG数据分析库, 整合了PolarDB PG, 封装了Scikit Learn与matplotlib的部分函数, 支持可视化数据分析.

包含了丰富的使用例子. 非常适合有数据分析需求的同学使用.

https://github.com/redraiment/SciKit-Learn-for-PolarDB

Scikit-Learn-for-PostgreSQL

PolarDB Logo

Scikit-Learn-for-PostgreSQL是一款基于PolarDB for PostgreSQL的数据分析工具,封装了Scikit Learnmatplotlib的部分函数。目前项目用于PolarDB for PostgreSQL的教学演示,尚未在生产环境中验证,可用于学习用途,请谨慎在生产环境使用。

当前版本:1.0.0

选择终端

为了在psql中可视化地展示数据,需要使用可展示sixel格式图片的终端软件:

  • MacOS环境:推荐使用iTerm2。
  • Linux环境:推荐使用xTerm。
  • Windows环境:推荐使用MinTTY。

安装方法

下载并启动Docker容器

基于PolarDB的环境已经提前构建好Docker镜像,可直接通过docker运行:

docker image pull redraiment/scikit-learn-for-polardb  
docker container run -d redraiment/scikit-learn-for-polardb  
sleep 60 # 等待PolarDB启动,约1分钟  
docker container exec -it <container-id> psql -hlocalhost -p10001 -Upostgres  

其中:

  • <container-id>替换为你自己本地的容器id。
  • 若运行psql看到错误提示:psql: FATAL: the database system is starting up,请继续耐心等待。

安装插件

成功启动psql之后,执行以下SQL,安装插件:

create extension plpython3u;  
create extension pgsklearn;  
select show_logo();  

若在终端上能看到PolarDB的logo图片,说明已经安装完成并可正常使用。如下图所示:

show_logo

使用示例

以下代码演示如何对鸢尾花数据集做降维,并可视化展示:

select load_iris(); -- 加载鸢尾花数据集到iris表  
alter table iris add column feature1 float8, add column feature2 float8;  
select decomposition_pca('iris', 'id', '{sepal_length,sepal_width,petal_length,petal_width}'::text[], '{feature1,feature2}'::text[]); -- 将4个维度的数据降维成2个维度的数据  
  

若在终端上能看到如下散点图,说明降维并展示成功!

show_logo

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论