想做数据分析师,该如何学习?

作者:Chiffon

来源:七风阁 http://chiffon.gitcafe.io/2015/01/10/MLE.html

经常有人问我怎么才能成一个数据分析师。我以为,要想做数据分析工作,需要掌握的技能不外乎是以下三个:

  1. 扎实的理论功底(统计,数据挖掘的基础知识、模型)
  2. 一门脚本编程语言(R/Python/Julia..)
  3. 丰富的实战经验

对于学习的顺序问题,应当是:理论---编程----实战的过程,一个循序渐进的安排会让自己效率大增。对于在校学生,最好的方式是课程中完成理论的学习,平时自学完成编程的学习,最后靠实践/实习来积累数据分析的实战经验。对于想将方向转向数据分析的同学,还是建议深入的看本统计的书,会让之后的路程事半功倍.

本文不再提理论部分的学习,随便从一个大学里面拉出来一位统计学的讲师都会比我讲的更深入浅出,我们主要把注意力放在R语言上面,给大家提供一个学习R语言的优秀渠道——————Coursera

何谓Coursera

Online Course

对于online课程大家应该不陌生了,现在做的比较好的应该就是果壳MOOC, 网易公开课, Coursera,果壳和网易做的是Coursera社区,三个网站的资源差不多是相通的,不过,我还是建议去听原汁原味的Coursera~

Coursera

Coursera是免费大型公开在线课程项目,由美国斯坦福大学两名计算机科学教授吴恩达(Andrew Ng)和达芙妮·科勒(Daphne Koller)创办。旨在同世界顶尖大学合作,在线提供免费的网络公开课程。Coursera 的首批合作院校包括斯坦福大学、密歇根大学、普林斯顿大学、宾夕法尼亚大学等美国名校。

我想Coursera与以往网络课程有所不同之处,一是在于资源变成了全球最好大学的教学资源,另外一个是Coursera会布置一些网络提交的作业,使得真正把教学视频变成了网络课程。

Data Science

什么是数据科学,实际上就是对数据提取,分析,理解,描述,预测的一门学科,提出的时间是2008年,乍一看来数据科学其实很像统计学,实际上,数据科学应当是统计与计算机的交叉学科...wiki

Coursera上面,John Hopkins大学提供了一整套的数据科学的在线课程,一共九门课:

  1. 数据科学家的工具箱 Data scientist's tool-box
  2. R语言编程 R programming
  3. 获取和清理是数据 Getting and cleaning data
  4. 探索性统计分析 Exploratory Data Analysis
  5. 可重复性研究 Reproducible Research
  6. 统计推断 Statistic Inference
  7. 回归模型 Rgression Model
  8. 实用机器学习 Practical machine learning
  9. 数据产品开发 developing data products

花了三个月把这九门课刷完了,9张证书容我先嘚瑟一下(证书是要付费的,免费上课是没有电子证书的),不过话说回来,交的学费是值得的。

数据科学家的工具箱Data scientist's tool-box

https://www.coursera.org/course/datascitoolbox

Get an overview of the data, questions, and tools that data analysts and data scientists work with. This is the first course in the Johns Hopkins Data Science Specialization.

DST这门课主要讲的是这个专项课程中九门课都是在讲什么的,另外就是一些基础的背景知识的介绍,包括:

  1. R/Rstudio的安装使用
  2. 其他课程的介绍
  3. Git版本控制工具

这里有一个比较重要的技能,就是git和Github的使用。Git一款自由和开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 Github是程序猿们的博客,简单的说,就是一个共享代码,或者管理项目代码的网站(博客),在后续的大部分课程中,作业是需要用Git来上传到Github中的,而在现实的工作中,如果涉及到程序,代码的问题,Git也是一项必备的技能。

课程作业4个quizzes,不是很难。

R语言编程(R programming)

https://www.coursera.org/course/rprog

Learn how to program in R and how to use R for effective data analysis. This is the second course in the Johns Hopkins Data Science Specialization.

Rprogramming开始就有些难度了,四周课程,4个quizzes,4个编程,一个project作业压力直线上升,这四周的目的是希望同学们能对R这门编程语言达到入门的水平,当然,建议是需要些编程基础的。

课程主要讲述一些基本的R语言编程方法:数据类型,导入数据,循环,向量化,debug,scroping Rule...

这门课算是一个入门课,之后课程的完成都需要R的编程能力,花四周完成这个课程,完成R的入门,这个过程是必要的。(^_^)

获取和清理是数据(Getting and cleaning data)

https://www.coursera.org/course/getdata

Learn how to gather and clean data from a variety of sources. This is the third course in the Johns Hopkins Data Science Specialization.

对于一个实际的项目,最重要的是什么?

目的>数据>模型

为了解决这个问题,我们需要导入数据,数据有问题,需要做清理以保证数据适用于下一步的建模 Getting and cleaning data这门课所教授的就是数据收集和清理的过程, 数据的收集包括:

  • 本地数据(.xlx,.csv,.txt)
  • 网络数据(html,xml,jason,API)
  • 数据库的数据(MySQL,HDF5)

数据的清理包括:

  • 处理异常值
  • 特征子集的选取
  • 正则化表达

这只是课程主要的一些项目,对于图像数据,音频数据的导入,数据的变形与整合等,都有提到,课程所包含的知识点很广,同时也相当实用,4个qizzes,一个project.

探索性统计分析 Exploratory Data Analysis

https://www.coursera.org/course/exdata

Learn the essential exploratory techniques for summarizing data. This is the fourth course in the Johns Hopkins Data Science Specialization.

Exploratory Data Analysis这门课主要讲怎么用R来画图,以完成探索性的分析过程,画图主要靠三个包:

  • base包,最基础的
  • lattice包画图,适用于大数据的
  • ggplot2包,方法最全也是画出来最好看的
  • 此外还会介绍一些经典的多元模型:层次聚类,Kmeans聚类,和主成分分析的方法

这门课要用git来传图片到Github什么的,而且对R的编程要求不低.... 3个quizzes,两个projects(其中要画至少10张图)。

可重复性研究Reproducible Research

https://www.coursera.org/course/repdata

Learn the concepts and tools behind reporting modern data analyses in a reproducible manner. This is the fifth course in the Johns Hopkins Data Science Specialization.

对于一个研究,或者一个论文,别人检测你的结论是否正确等,应该怎么做呢?自己再手动编程一遍实在是复杂,一个比较现代的方法就是做一个可重复研究的文档,其中包含程序,结果,结论等....

这门课讲述了如何用RMarkdown做出一个网页以方便别人来对你的结果进行重现(这句话看起来简单,其中的...试了才知道)

其实客观的来说,如果你完全掌握了Yihui大大的knitr包,这门课剩下的部分是理工科中少见的文艺风了,各种对于研究的讨论,研究思路的发掘,讲述,相信对于培养一个数据科学的氛围来说,是相当的不错。

这门课3个quizzes,两个projects。

统计推断(Statistic Inference)

https://www.coursera.org/course/statinference

Learn how to draw conclusions about populations or scientific truths from data. This is the sixth course in the Johns Hopkins Data Science Course Track.

Statistic Inference我感觉其实是最简单的(基本上是没看视频直接答题就都满分了),当然很多人在讨论组里说这个好难,以至于最后老师把作业的deadline一推再推。

其实,统计推断就是概率论与数理统计,统计学出身的话这门课应该不难学。

Statistic Inference从概率和随机变量讲起,一直讲到统计的检验的势(我猜很多本科毕业的统计学生都不一定熟悉这个概念),只花了四周,当然一些高深的统计知识不需要证明或者计算,只要你可以在R里面实现就可以了... 但如果你是真心想学些东西的话,还是一点点死磕这门课吧。

回归模型 Rgression Model

https://www.coursera.org/course/regmods

Learn how to use regression models, the most important statistical analysis tool in the data scientist's toolkit. This is the seventh course in the Johns Hopkins Data Science Specialization.

回归是统计历史上发展最完全,影响最深远,至今还有很大活力的一类模型,这也是John Hopkins为什么要用一整门课 Rgression Model,来叙述这一个模型了.最简单的回归就是用来描述变量之间的线性关系,或者可以看做量化相关性,之后一点点变复杂,从一元到多元,从iid的正态误差项到各种其他的情况。

所有的计算的过程都在R中完成,课程中包含了一些理论的证明过程,还是那句话:要想学好,建议死磕。

包含知识点:

  • 线性回归(一元/多元)
  • 模型解释(系数,残差)
  • 模型诊断(异方差,多重共线性..)
  • GLM(包括Logistic回归,Poission回归等)

课程包括3个quizzes,1个project

实用机器学习 Practical machine learning

https://www.coursera.org/course/predmachlearn

Learn the basic components of building and applying prediction functions with an emphasis on practical applications. This is the eighth course in the Johns Hopkins Data Science Specialization.

和回归模型的课程比起来,Practical machine learning这门课所包含的模型更多,回归模型的课程是为了告诉你对于一个模型应该怎样完整的学习它,而Practical machine learning 是为了尽可能多的为你介绍现代的一些数据挖掘模型,并深入浅出的传授整套机器学习的流程:

数据清洁--->划分训练集--->模型拟合--->模型评价,预测。

包含知识点:

  • 模型的训练与检验
  • 各种分类模型:分类树,随机森林,Bagging,GBM,正则化回归(lasso,Riddge)
  • 模型诊断(异方差,多重共线性..)
  • GLM(包括Logistic回归,Poission回归等)

课程包括3个quizzes,1个project

数据产品开发 developing data product

https://www.coursera.org/course/devdataprod

Learn the basics of creating data products using Shiny, R packages, and interactive graphics. This is the ninth course in the Johns Hopkins Data Science Specialization.

最后一门课应该是最炫的一门了,之前8门课说当做铺垫也不为过,最后的课程应该就是这3部分的内容:

  1. slidify
  2. shiny
  3. packages

slidify是Ramnathv写的一个基于markdown的包,不在R的镜像里面,需要用Devtool从github上安装,单纯的说,这个包就是用来做可重复实验的slide(ppt)而由于使用的是Markdown 语法,所以整个编写过程简化许多,是一个在R中很fashion的包。

shiny是Rstudio开发的制作可交互网页的包,将R的函数转化为JS的代码,从而可以做出很多很酷的网页效果,细节请看(shiny.rstudio.com)

最后的packages是讲述了如何写一个自己的package,在学第一门课的时候应该是从未想到自己可以达到这样的水平吧,实际上package就是一些函数的合辑,如果你对自己的函数有信心,为什么不试试呢?

Summary

Coursera的Data Science专项课程几乎已经包括了R语言数据挖掘中大部分的基础知识,这九门课对于R的入门来说,含金量还是挺高的。

最终还是要提醒大家,师傅领进门,修行在个人。课程再好,也需要自己耐下心来学习。要想真正学好R,玩转数据分析,还是需要自己的努力。

原文发布于微信公众号 - 大数据挖掘DT数据分析(datadw)

原文发表时间:2016-02-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏智能算法

把照片滤镜成“电影风”,其实没你想象的简单

P过许多张图片、磨过不少皮,却依然不了解其中的奥秘。趁着刚被一波滤镜刷屏的节奏,今天,我们扒一扒“滤镜”。 化腐朽为神奇的滤镜 ? 《你的名字》剧照 美仑美焕的...

3715
来自专栏量子位

Top10机器学习开源项目发布,历时一个月评出 | 附GitHub地址

从将近250个机器学习开源项目中,综合各种条件进行打分排序,最终Mybridge团队评选出十大最新、最棒的机器学习开源项目。 这份Top10名单中包括对象检测、...

3318
来自专栏崔庆才的专栏

DensePose 开源了!利用它可轻松实现实时3D人体姿势识别!

大家可能还记得,今年2月Facebook发布的,人体姿势实时识别系统DensePose。

910
来自专栏机器之心

资源 | 从TensorFlow到PyTorch:九大深度学习框架哪款最适合你?

选自CIO 作者:Mitch De Felice 机器之心编译 参与:Jane W、黄玉胜 开源的深度学习神经网络正步入成熟,而现在有许多框架具备为个性化方案提...

3797
来自专栏AI2ML人工智能to机器学习

机器学习平台的优化器 (平台篇)

机器学习的开源平台越来越多了, 绝大部分平台都是牛人读博期间的产物 (所以大家一定要珍惜读博能做开发的日子)。 先说一下, 主流平台也分工业和研究, 大体这...

570
来自专栏CSDN技术头条

诺亚神经响应机NRM模型:深度学习改变自然语言对话

图灵测试是人工智能的梦想,它所要完成的任务是机器智能判定实验,即让机器和人能够通过自然语言对话(Natural Language Dialogue,NLD)来沟...

1839
来自专栏AI科技评论

从计算机视觉的小白变为大神,你需要经历这七个阶段

如果想要机器能够进行思考,我们需要先教会它们去看。 李飞飞——Director of Stanford AI Lab and Stanford Vision...

2915
来自专栏企鹅号快讯

2017年度30大最惊艳的开源机器学习项目

在过去的一年里,Mybridge AI 比较了近 8,800个开源机器学习项目,选择了前30名(概率只有0.3%)。 这是一个竞争激烈的名单,精挑细选了2017...

2278
来自专栏机器之心

CVPR 2018奖项出炉:两篇最佳论文,何恺明获PAMI 青年研究员奖

而在一个小时前,最受关注的 CVPR 2018 最佳论文结果揭晓:来自斯坦福大学和 UC Berkeley 的 Amir R. Zamir 等人获得 CVPR2...

752
来自专栏量子位

谷歌AI绘制大脑神经地图,开源代码帮你理清混乱的脑回路

1074

扫码关注云+社区