作者 | Renan Ferreira

编译 | VK

来源 | Towards Datas Science

典型的数据科学工作流由以下步骤组成:

确定业务需求->数据获取->数据准备->数据分析->共享数据见解

每一个步骤都需要一套专业知识,这些专业知识可分为:

数据工程师:开发、构建、测试和维护数据管道

数据科学家:使用各种方法建立数据模型(机器学习模型)

数据分析师:获取数据工程师准备的数据,以图形、图表和仪表板的形式从中提取见解(商业智能)

平台管理员:负责管理和支持数据基础设施(DevOps)

Databricks是一个统一的平台,它为每个作业提供了必要的工具。在本文中,我们将通过创建一个数据管道并指出每个团队成员的职责来分析巴西的COVID-19数据。

准备

要完成下一步,你需要访问Databricks帐户。最简单的启动方法是在https://community.cloud.databricks.com

集群创建(平台管理员)

第一步是配置集群。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/relferreira/databricks-tutorial/tree/master/covid

下载文件caso.csv.gz

解压缩该文件,访问“数据”菜单,然后单击“添加数据”按钮。接下来,上传先前下载的CSV文件。

上传完成后,我们将使用数据集中显示的信息创建一个新表。单击Create Table UI,将表重命名为covid,将第一行设置为标题,最后单击Create按钮。

数据分析

创建了表之后,我们就可以开始分析数据集了。首先,我们需要创建一个新的python notebook。

Worspace > Users > YOUR EMAIL

单击箭头并创建一个新的Notebook

尽管Databricks是一个python Notebook,但它支持Notebook内的多种语言。在我们的例子中,我们将主要使用SparkSQL。如果你熟悉SQL,SparkSQL会让你感觉像家一样。

让我们从查看新表开始:

%sql
SELECT * FROM covid

你应该看到这样的表:

作为数据分析员,你应该能够提取有关数据的有价值的信息。首先,我们需要理解表中每一列的含义。一种方法是使用DESCRIBE函数:

%sql
DESCRIBE covid

通过分析这两个表,我们可以推断出,当列place_type为state时,每一行表示该state的总数。让我们试着画出人口最多的三个州的死亡人数的演变:

%sql
SELECT 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 pd
import logginglogger = spark._jvm.org.apache.log4j
logging.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/relferreira/databricks-tutorial

原文链接:https://towardsdatascience.com/getting-started-with-databricks-analyzing-covid-19-1194d833e90f

往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载机器学习的数学基础专辑

【数据分析】Databricks入门:分析COVID-19相关推荐

  1. Excel数据分析从入门到精通(十三)28个图表之趋势分析+转化分析

    Excel数据分析从入门到精通(十三)28个图表之趋势分析+转化分析 趋势分析 1.趋势分析-折线图 2.趋势分析-面积图 3.趋势分析-趋势气泡图 转化分析 1.转化分析-漏斗图 2.转化分析-Wi ...

  2. Excel数据分析从入门到精通(十)28个图表之对比分析

    Excel数据分析从入门到精通(十)28个图表之对比分析 1.对比分析-箭头图 2.对比分析-排行图 3.对比分析-小人对比图 4.对比分析-雷达图 5.对比分析-条形图 6.对比分析-柱形图 7.表 ...

  3. Excel数据分析从入门到精通(十二)28个图表之分布分析

    Excel数据分析从入门到精通(十二)28个图表之分布分析 1.分布分析-直方图 2.分布分析-气泡矩阵图 3.分布分析-箱线图 4.分布分析-散点图 5.分布分析-旋风图 1.分布分析-直方图 有表 ...

  4. 谁说菜鸟不会数据分析(入门篇)----- 学习笔记2(结构为王:确定分析思路 4P 5W2H )

    1.数据分析方法论 确定分析思路需要以营销.管理等理论为指导,把这些跟数据分析相关的营销.管理等理论统称为数据分析方法论. 数据分析方法论主要用来指导数据分析师进行一次完整的数据分析,更多的是指数据分 ...

  5. covid 19如何重塑美国科技公司的工作文化

    未来 , 技术 , 观点 (Future, Technology, Opinion) Who would have thought that a single virus would take dow ...

  6. Pandas高级数据分析快速入门之三——数据挖掘与统计分析篇

    Pandas高级数据分析快速入门之一--Python开发环境篇 Pandas高级数据分析快速入门之二--基础篇 Pandas高级数据分析快速入门之三--数据挖掘与统计分析篇 Pandas高级数据分析快 ...

  7. 使用python进行数据分析可视化入门指南

    The goal of this blog post is to give you valuable information that can help you get started with da ...

  8. 商业数据分析从入门到入职(9)Python网络数据获取

    文章目录 前言 一.网络和网页基础知识 1.数据来源 2.网络基础知识 3.HTML.CSS和网页数据抓取方式 二.BOSS直聘数据抓取案例 1.网站预览 2.数据获取 3.提取列表信息 4.获取职位 ...

  9. python数据分析从入门到精通电子工业出版社_荐书丨Python数据分析从入门到精通...

    点击上方"程序人生",选择"置顶公众号" 第一时间关注程序猿(媛)身边的故事 采用Python 3.6版本,兼容Python 3.X等众多版本 一本书搞定IPy ...

  10. python官方推荐的三本书-【数据分析】入门数据分析,你一定要看的三本书

    原标题:[数据分析]入门数据分析,你一定要看的三本书 最近经常被问到怎么入门数据分析,可能很多同学对怎么开始学习还是比较困惑的.我回想自己学习数据分析的经历,总结了一些建议,希望能给到大家帮助. 打好 ...

最新文章

  1. 数据库之子查询四(多重,表复制)
  2. SpringBoot实现OAuth2认证服务器
  3. 简介I/O向量、sendv、writev
  4. Plupload上传插件中文文档
  5. V4L2框架分析学习二
  6. 2018-3-28Linux系统管理(16)计算机网络基础
  7. 【报告分享】2020情趣用品线上消费趋势报告.pdf(附下载链接)
  8. 让你的CSS更尽完美的技巧
  9. 区块链 PBFT 哪个节点 谁负责打包区块
  10. IT、电商、系统、架构等名称名词解释
  11. [JNI] 开发基础 (2) 指针
  12. 使用 URLDecoder 和 URLEncoder 对中文字符进行编码和解码
  13. Vue-cli3 ,js根据汉字或拼音模糊搜索功能,汉字支持同音字、多音字,支持首字母
  14. [IDEA]项目web文件夹找不到
  15. php实现简易聊天室
  16. 进程间通信-消息机制
  17. ​一文看尽MAE最新进展!恺明的MAE已经提出大半年,目前发展如何?
  18. 【实习】大三暑假实习总结:工作记录、个人日记、感悟总结
  19. 沙漏型悬浮芯体纸尿裤,爱宝宝就选择它
  20. win10下设置超清晰壁纸

热门文章

  1. poj 1092 Farmland (Geometry)
  2. 一个时间日期转换格式的小功能(Oracle)
  3. 37.数字在排序数组出现的次数
  4. js数组对象的常用方法
  5. 微信公众号自动回复 node
  6. dede:arclist 不能调用文章的副栏目或多个副栏目的解决方法
  7. 怎么在电脑上使用python3.6_Windows下 Python3.6.1 运行环境的搭建
  8. MATLAB R2022 最新中英文版 数据处理
  9. pycharm安装包时各种报错,且pip无法安装
  10. SCI论文写作--IEEE的期刊和杂志区分