这个云ETL工具配合Python轻松实现大数据集分析,附案例

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 这个云ETL工具配合Python轻松实现大数据集分析,附案例

一、Python处理大数据集的痛点

Python是数据分析最好的工具之一,像pandas、numpy、matplotlib等都是Python生态的数据分析利器,但处理大数据集是Python的一大痛点,特别是你在本地电脑进行IO操作时非常慢,像pandas读取上G的文件就得几分钟。

我之前参加过一个交通类的数据科学比赛,主办方让参赛者从官网下载几十G的原始CSV文件,这些数据存在电脑里,然后通过Python来读取、清洗、可视化、建模,每一步都很慢,当时用了多线程、分块读取等各种方法才勉强完成比赛。

当然市面上很多工具可以提升数据处理的效率,比如Pyspark、Modin、Polars等,确实提升不少,但依旧受限于电脑的内存和性能限制。

二、使用下秒数据机器人实现大数据集ETL

既然本地电脑不行,那就只能上云,我的需求是云工具必须要能快速存取数据,且支持SQL查询和Python调用,这样既能在云上完成SQL数据清洗,还能通过Python调用API实现数据抽取。

最近刚好发现了这样一个工具-下秒数据机器人,不光支持大数据集快速上传、SQL查询、Python API调用,还能实现AI数据问答、自助分析等功能,非常方便。 aa9434cc408298a6d6756d94099c9f2b.jpg

a) 数据集导入

下秒数据机器人支持CSV、Excel、XML、Json及各种数据库等数据导入 d1a3534859f2ec721311cfc363cda640.jpg

下秒数据机器人网站链接:

http://nexadata.cn/mobileSetMessage

如果对数据导入有问题,可以联系下秒的技术支持

b) SQL数据查询

数据导入过程中可以使用SQL进行数据清洗,也可以查询已经导入的数据集 cd115ece636cab101b910dc55b060fb7.jpg

c) Python API调用

几行代码就可以实现Python API数据读取,还支持Java、Javascript、PHP语言调用,再也不用纠结本地电脑内存了。 c446352a305c69a9887a8d5817abae63.jpg

d) AI数据问答

通过文本提问形式,实现数据的分析和提取

cda3ef111f4a761292cc829c582b6824.jpg

e) 自助分析

下秒数据机器人还提供了各种自助分析的工具,像文本自动分类、ABC分析、留存分析等,无需代码也能分析数据。\

881a671a40aaea9465385c3c039eb866.jpg

三、案例:探索分析葡萄酒质量

有了这个云ETL工具后,用Python来分析数据就方便很多,一方面大数据集可以快速上传和调用,另一方面直接从云上取数,不依赖终端设备,并且你的很多数据处理工作都可以在云上完成,Python取数后直接可以分析和建模。

下面用葡萄酒质量数据集来演示下如何使用下秒数据机器人来存储数据,并使用Python调用接口来进行数据分析。

葡萄酒数据是经典的kaggle比赛数据集,通过葡萄酒各种化学指标来评估葡萄酒的质量,非常具有分析价值。

e1747411a807a5315c1eae05b975bb70.jpg

a) 上传数据

直接将葡萄酒数据集csv文件上传到下秒数据机器人平台

2bb55364bebb56c29ad4444a86fefae5.jpg

上传完成保存后,便建立了一个数据流程任务,然后再构建数据视图,我们便可以使用Python API调用这个数据集。

7fc68235020b6504eb784e8b0fa19e00.jpg

b) 调用API数据

数据视图有API调用功能,提供了各种编程语言示例代码,我们复制Python示例代码到编辑器里,填好taken便可以调用数据了。

0cf11631a607d47ac2d6dbb13b0052b3.jpg

数据取出来是json格式,可以把数据读成pandas dataframe格式,方便查看分析。

import pandas as pd
import requests
# 导入数据,使用下秒机器人存储数据,通过API调用
headers = { "x-token": "tkb31a7c693c8341a8b47e9ce4e32184e9" }
response = requests.get("http://demo.chafer.nexadata.cn/openapi/v1/sheet/sht21JULR9CANs/records?size=500&page=1", headers = headers)
data = response.json()['data']['list']
data = pd.DataFrame(data).astype(float)
data

a1a1a57edf296ba3926564f461f34690.jpg

c) 数据探索可视化分析

接下来就是数据分析过程,使用Python pandas和matplotlib对葡萄酒数据集进行可视化分析。

数据分析的核心目标是评估葡萄酒的质量,评估哪些特征对葡萄酒的品质影响最大,以及葡萄酒不同特征之间有无相关性。

首先查看数据集的描述性统计,像平均值、方差等,观察数据的分布情况

# 查看数据集的描述统计
data.describe()[1:].T.style.background_gradient(cmap='Blues')

8cbf19bf6cb10f1c0e9069c1cd885e2f.jpg

其次各个特征之间的相关性关系,通过颜色深浅可以看出不同特征间的相关关系。

import matplotlib.pyplot as plt
# 查看相关系数
plt.figure(figsize=(20, 17))
matrix = np.triu(data.corr())
sns.heatmap(data.corr(), annot=True,
            linewidth=.8, mask=matrix, cmap="rocket")
plt.show()

62c5fe9a0ced065ec2a04d9b71caf46a.jpg

最后查看葡萄酒不同质量情况下,酸度等其他指标的平均值,来判定葡萄酒各指标对质量的影响。

# fixed acidity - quality两者关系
data[["fixed_acidity","quality"]].groupby(["quality"], as_index = False).mean().sort_values(by = "quality").style.background_gradient("Blues")

6c60403530742e34cfdad1a890b5334d.jpg

# fixed acidity - quality两者关系
data[["alcohol","quality"]].groupby(["quality"], as_index = False).mean().sort_values(by = "quality").style.background_gradient("Blues")

e6d865101f5f93dfb531684966b4ddaa.jpg

# fixed acidity - quality两者关系
data[["pH","quality"]].groupby(["quality"], as_index = False).mean().sort_values(by = "quality").style.background_gradient("Blues")

038e992bad086be963f0b53509652472.jpg

这里对葡萄酒质量数据做了简单的可视化探索,还有很多东西可以挖掘,比如口感较甜的葡萄酒是否质量更好?什么样酒精度的葡萄酒质量最好?什么样PH值的葡萄酒质量最好等等?

我把数据集和完整代码放在下秒数据机器人网站里,大家可以点击阅读原文去亲自试一试如何操作。

四、总结

对于经常使用Python做数据分析和建模的同学来说,像下秒数据机器人这样的云数据ETL有很多便捷之处,不用担心大数据读取慢,也不用担心换设备没数据可用,你可以专心做分析。

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
5天前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python实现基于矩阵分解的长期事件(MFLEs)时间序列分析
在现代数据分析中,高维时间序列数据的处理和预测极具挑战性。基于矩阵分解的长期事件(MFLEs)分析技术应运而生,通过降维和时间序列特性结合,有效应对大规模数据。MFLE利用矩阵分解提取潜在特征,降低计算复杂度,过滤噪声,并发现主要模式。相比传统方法如ARIMA和深度学习模型如LSTM,MFLE在多变量处理、计算效率和可解释性上更具优势。通过合理应用MFLE,可在物联网、金融等领域获得良好分析效果。
22 0
使用Python实现基于矩阵分解的长期事件(MFLEs)时间序列分析
|
7天前
|
数据可视化 算法 数据挖掘
Python时间序列分析工具Aeon使用指南
**Aeon** 是一个遵循 scikit-learn API 风格的开源 Python 库,专注于时间序列处理。它提供了分类、回归、聚类、预测建模和数据预处理等功能模块,支持多种算法和自定义距离度量。Aeon 活跃开发并持续更新至2024年,与 pandas 1.4.0 版本兼容,内置可视化工具,适合数据探索和基础分析任务。尽管在高级功能和性能优化方面有提升空间,但其简洁的 API 和完整的基础功能使其成为时间序列分析的有效工具。
60 37
Python时间序列分析工具Aeon使用指南
|
3天前
|
机器学习/深度学习 运维 数据可视化
Python时间序列分析:使用TSFresh进行自动化特征提取
TSFresh 是一个专门用于时间序列数据特征自动提取的框架,支持分类、回归和异常检测等机器学习任务。它通过自动化特征工程流程,处理数百个统计特征(如均值、方差、自相关性等),并通过假设检验筛选显著特征,提升分析效率。TSFresh 支持单变量和多变量时间序列数据,能够与 scikit-learn 等库无缝集成,适用于大规模时间序列数据的特征提取与模型训练。其工作流程包括数据格式转换、特征提取和选择,并提供可视化工具帮助理解特征分布及与目标变量的关系。
36 16
Python时间序列分析:使用TSFresh进行自动化特征提取
|
7天前
|
机器学习/深度学习 人工智能 分布式计算
我的阿里云社区年度总结报告:Python、人工智能与大数据领域的探索之旅
我的阿里云社区年度总结报告:Python、人工智能与大数据领域的探索之旅
80 35
|
5天前
|
人工智能 分布式计算 大数据
MaxFrame 产品评测:大数据与AI融合的Python分布式计算框架
MaxFrame是阿里云MaxCompute推出的自研Python分布式计算框架,支持大规模数据处理与AI应用。它提供类似Pandas的API,简化开发流程,并兼容多种机器学习库,加速模型训练前的数据准备。MaxFrame融合大数据和AI,提升效率、促进协作、增强创新能力。尽管初次配置稍显复杂,但其强大的功能集、性能优化及开放性使其成为现代企业与研究机构的理想选择。未来有望进一步简化使用门槛并加强社区建设。
38 7
|
2天前
|
数据采集 缓存 API
python爬取Boss直聘,分析北京招聘市场
本文介绍了如何使用Python爬虫技术从Boss直聘平台上获取深圳地区的招聘数据,并进行数据分析,以帮助求职者更好地了解市场动态和职位需求。
|
12天前
|
SQL 分布式计算 DataWorks
MaxCompute MaxFrame评测 | 分布式Python计算服务MaxFrame(完整操作版)
在当今数字化迅猛发展的时代,数据信息的保存与分析对企业决策至关重要。MaxCompute MaxFrame是阿里云自研的分布式计算框架,支持Python编程接口、兼容Pandas接口并自动进行分布式计算。通过MaxCompute的海量计算资源,企业可以进行大规模数据处理、可视化数据分析及科学计算等任务。本文将详细介绍如何开通MaxCompute和DataWorks服务,并使用MaxFrame进行数据操作。包括创建项目、绑定数据源、编写PyODPS 3节点代码以及执行SQL查询等内容。最后,针对使用过程中遇到的问题提出反馈建议,帮助用户更好地理解和使用MaxFrame。
|
8月前
|
数据采集 JSON JavaScript
Python爬虫案例:抓取猫眼电影排行榜
python爬取猫眼电影排行榜数据分析,实战。(正则表达式,xpath,beautifulsoup)【2月更文挑战第11天】
339 2
Python爬虫案例:抓取猫眼电影排行榜
|
3月前
|
数据采集 前端开发 NoSQL
Python编程异步爬虫实战案例
Python编程异步爬虫实战案例
89 2
|
7月前
|
数据采集 前端开发 Java
Python简单爬虫案例
用pyhton从网页中爬取数据,是比较常用的爬虫方式。网页一般由html编写,里面包含大量的标签,我们所需的内容都包含在这些标签之中,除了对python的基础语法有了解之外,还要对html的结构以及标签选择有简单的认知,下面就用爬取fl小说网的案例带大家进入爬虫的世界。

热门文章

最新文章