作者|Renan Ferreira
编译|VK
起源|Towards Datas Science
典型的数据迷信工作流由以下步骤组成:
确定业务需要->数据获取->数据筹备->数据分析->共享数据见解
每一个步骤都须要一套专业知识,这些专业知识可分为:
数据工程师:开发、构建、测试和保护数据管道
数据科学家:应用各种办法建设数据模型(机器学习模型)
数据分析师:获取数据工程师筹备的数据,以图形、图表和仪表板的模式从中提取见解(商业智能)
平台管理员:负责管理和反对数据基础设施(DevOps)
Databricks是一个对立的平台,它为每个作业提供了必要的工具。在本文中,咱们将通过创立一个数据管道并指出每个团队成员的职责来剖析巴西的COVID-19数据。
筹备
要实现下一步,你须要拜访Databricks帐户。最简略的启动办法是在https://community.cloud.datab...
集群创立(平台管理员)
第一步是配置集群。Databricks是一个基于Spark的平台,是最风行的大数据分析框架之一。Spark实质上是一个分布式系统。驱动程序是集群的协调器,工作节点负责沉重的工作。
平台管理员负责依据用例、spark版本、worker节点数量和主动调整配置抉择适当的虚拟机系列。例如,ETL过程可能须要内存优化的设施,而沉重的机器学习训练过程可能在gpu上运行。
转到Clusters页面,应用6.6ML运行时创立一个新的集群。如果你应用的是 Azure Databricks或AWS,则须要抉择驱动程序和worker节点的VM系列。对于本教程,你能够抉择最便宜的。
数据获取
数据获取可能是一个具备挑战性的畛域。通常,公司将数据存储在多个数据库中,而当初数据流的应用十分广泛。侥幸的是,Databricks与Spark和Delta-Lake相结合,能够帮忙咱们为批处理或流式ETL(提取、转换和加载)提供一个简略的接口。
在本教程中,咱们将从最简略的ETL类型开始,从CSV文件加载数据。
首先,咱们须要下载数据集。拜访以下网址:
https://github.com/relferreir...
下载文件caso.csv.gz
解压缩该文件,拜访“数据”菜单,而后单击“增加数据”按钮。接下来,上传先前下载的CSV文件。
上传实现后,咱们将应用数据集中显示的信息创立一个新表。单击Create Table UI,将表重命名为covid,将第一行设置为题目,最初单击Create按钮。
数据分析
创立了表之后,咱们就能够开始剖析数据集了。首先,咱们须要创立一个新的python notebook。
Worspace > Users > YOUR EMAIL
单击箭头并创立一个新的Notebook
只管Databricks是一个python Notebook,但它反对Notebook内的多种语言。在咱们的例子中,咱们将次要应用SparkSQL。如果你相熟SQL,SparkSQL会让你感觉像家一样。
让咱们从查看新表开始:
%sqlSELECT * FROM covid
你应该看到这样的表:
作为数据分析员,你应该可能提取无关数据的有价值的信息。首先,咱们须要了解表中每一列的含意。一种办法是应用DESCRIBE函数:
%sqlDESCRIBE covid
通过剖析这两个表,咱们能够推断出,当列place_type为state时,每一行示意该state的总数。让咱们试着画出人口最多的三个州的死亡人数的演变:
%sqlSELECT date, state, deaths FROM covid WHERE state in (“MG”, “RJ”, “SP”) and place_type = “state”
单击Bar Chart按钮,Plot选项,并对Line chart应用以下配置:
当初咱们有了大风行期间死亡人数演变的一个很好的代表。例如,咱们能够将此图嵌入仪表板,以揭示这些州的人口。
数据迷信
接下来,咱们将尝试预测先前绘制的工夫序列的将来值。为此,咱们将应用一个名为Prophet的Facebook库
首先,咱们须要装置一些依赖项。
Clusters > COVID > Libraries
并应用PyPI装置以下依赖项
- pandas
- pystan
- fbprophet
咱们将尝试预测Minas Gerais(MG)将来的死亡人数。所以第一步是收集咱们的数据。
兴许你须要革除你Notebook的状态
import pandas as pdimport logginglogger = spark._jvm.org.apache.log4jlogging.getLogger("py4j").setLevel(logging.ERROR)query = """ SELECT string(date) as ds, int(deaths) as y FROM covid WHERE state = "MG" and place_type = "state" order by date"""df = spark.sql(query)df = df.toPandas()display(df)
接下来,咱们将应用Prophet拟合模型并最终绘制预测
from fbprophet import Prophetm = Prophet()m.fit(df)future = m.make_future_dataframe(periods=30)forecast = m.predict(future)fig1 = m.plot(forecast)
你应该看到上面的图表和预测:
论断
咱们的指标是演示数据迷信工作流的所有步骤。这就是为什么咱们没有形容工夫序列模型是如何工作的。如果你遵循本教程,你应该对Databricks平台有一个很好的理解。
此公共存储库中提供了残缺的Notebook:https://github.com/relferreir...
原文链接:https://towardsdatascience.co...
欢送关注磐创AI博客站:
http://panchuang.net/
sklearn机器学习中文官网文档:
http://sklearn123.com/
欢送关注磐创博客资源汇总站:
http://docs.panchuang.net/