背景
泽鹏开源的PG数据分析库, 整合了PolarDB PG, 封装了Scikit Learn与matplotlib的部分函数, 支持可视化数据分析.
包含了丰富的使用例子. 非常适合有数据分析需求的同学使用.
https://github.com/redraiment/SciKit-Learn-for-PolarDB
Scikit-Learn-for-PostgreSQL
Scikit-Learn-for-PostgreSQL是一款基于PolarDB for PostgreSQL的数据分析工具,封装了Scikit Learn与matplotlib的部分函数。目前项目用于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图片,说明已经安装完成并可正常使用。如下图所示:
使用示例
以下代码演示如何对鸢尾花数据集做降维,并可视化展示:
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个维度的数据
若在终端上能看到如下散点图,说明降维并展示成功!
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。







