查看: 5031|回复: 0

业余时间如何学数据分析?

[复制链接]

82

主题

82

帖子

608

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
608
QQ
发表于 2016-10-7 13:05:09 | 显示全部楼层 |阅读模式
业余时间如何学数据分析?








对于大部分人来说,数据分析基本上都是靠着自学完成,比如我就是一个典型的案列。题主是计算机出生,上手数据分析应该比较容易一点。我没接触过什么编程,目前也在搞SPARK,HADOOP等,也没觉得自己比别人差多少~~

我给出的这个回答基于我自己的学习路径,并且主要是以书本为主,尝试回答一下:一个新手如何系统的学习数据分析
下面我先给出书单



我给出的这个回答基于我自己的学习路径,并且主要是以书本为主,尝试回答一下:一个新手如何系统的学习数据分析
下面我先给出书单:

这些书籍都有对应的中文版本。我喜欢将学习分阶段进行,这样学习起来有目标并且不会太累,每个阶段完成各自的任务就好。后面的星星代表每本书籍的重要度,星星越多表示该书越值得阅读。

初级阶段:
首先,我是赞成PYTHON ROCKS这句话。说多了你可能不理解,但是当你正真在工业上应用的时候,你就会发现PYTHON能做很多R不能做的事情。 因此强烈建议第一阶段以打基础,学习PYTHON为主。 那么怎么学?
《深入浅出数据分析》 是可以学习到最基础的统计、概率等理论知识,这些知识是你前进的基石,而且此书延续了head first系列的一贯作风,非常的有趣味,读起来不会感觉枯燥乏味!

接下来你应该好好的学一学PYTHON这门语言。我们说PYTHON可以做的事情太多了,数据分析只是它的一个功能而已。因此锁定目标,只学习有关数据分析部分的知识就行,其它涉及到什么WEB开发,网络编程的一律跳过,一定要集中精力去攻克你的目标,不要分神,有时候摊子铺大了就回不来了!! 那么《利用PYTHON进行数据分析》绝对是你学习PYTHON的不二之选(我指的是数据分析),这本书的作者是大名鼎鼎的pandas的作者,你可以想象这本书的权威性。因此去买一本,好好的研究一番,基本上你的数据处理能力能上好几个台阶。一定要重点学习numpy,pandas,matplotlib.

然后,SQL是你逃不掉的命,一定要写好,你既然是计算机专业,应该不需要我强调太多~
最后一本书你就当着小说读读就行,改善一下你程序员的思维,学会一点怎么在真实业务中应用数据分析技巧!记住:这是趣味书!

以上就是初级阶段,主要以看书为主,让自己对数据分析有一个初步的认识。
下面的中级,高级就需要配合视频和书本一起来学习了~

中级进阶:
这一部分是核心的地方,也是你能够和别人




别人拉开距离的阶段。学的好,薪资蹭蹭的往上涨,学不好,那就多学几遍。
在这个阶段的核心任务就是:撸的了代码,算的上公示,看得懂业务!  中级阶段会涉及到大量的使用代码和模型去解决实际业务问题!

看清楚三点:代码、模型、案列
你要边学边用,这样才能学的更快,收货更多! 那么怎么学?
第一步,《数据挖掘导论》这本书先花一个月的时间好好的阅读下,知道数据挖掘的一个雏形,能够认识一些常用的模型和算法。能够搞清楚常用的监督和非监督学习,提到模型要能说出它的应用场景和优缺点。回答几个关于这本书的常见问题?
1. 阅读这本书是否需要一点课前知识?
答:要,但是不多。
2. 都有哪些课前知识?
答:微积分,概率论,线性代数,运筹学等等
3. 我的天!那我是不是先要去学习一下这些知识后再来看这本书?
答:千万别!!! 记得我前面说过:摊子铺大了你有时候就回不来了。
4. 那我怎么学?
答:很简单。直接看书,看不明白的就去google。比如说你看到SVM那里,不知道什么是拉格朗日,那么就去Google(其实这本书的附录也讲了什么是朗格朗日,甚至还讲解了怎么进行矩阵计算)。 总之,不要兜圈子,遇到什么就去补什么。

同时,在这里我强烈建议你去学习一下coursera上面的机器学习课程,你会对算法有一个更深的认识,关键是你能学会矩阵计算,梯度下降等常用技能:
https://www.coursera.org/learn/machine-learning



第二步,使用PYTHON结合数据挖掘知识进行实际案列操作。请使用《集体智慧编程》,这本书的评价我也给你们贴出来,豆瓣评分9分,质量自然不用我说。我唯一想强调的是:请你一定要全部代码自己写一遍,不要复制粘贴!!!!!!
集体智慧编程 (豆瓣)

如果有时间,请去学习一下关于PYTHON的课程:Introduction to Computer Science and Programming Using Python

第三步,欢迎使用《机器学习系统设计》这本书,你会接触到PYTHON里面最niubility的SCIKIT-LEARN机器学习包。虽然官网文档阅读性已经很佳,但是缺少一个系统的过程。而这本书就是教会你如何从真实的业务角度去思考运用机器学习模型。 同样的,请你自己敲代码,不懂的就去看官方文档,还是不懂的就去google。

第四步,想知道为什么豆瓣和亚马逊的推荐那么准确?  那么《推荐系统实战》绝对是一本最佳的书籍,作者将全部的算法使用PYTHON实现,无论是基于业务的推送还是基于协同过滤算法的推送都讲解的非常清楚!!如果你有兴趣了解,请毫不犹豫的上马拉弓~

第五步,你一定听说过R,一定也纠结过到底学习R还是PYTHON。那么我就粗暴的回答一下:都要学!,前期已PYTHON为主,后期一起学习R语言,不要问我为什么,纯属个人感觉。
《R IN ACTION》绝对绝对是入门的最好参考书,没有之一。跟着书上的代码敲一遍,模型计算都自己搞清楚(你有了前面的基础,这些学起来很轻松)。
最后,COURSERA上面的R语言课程很糟,谁听谁倒霉,不信你去试试?





事先说一句,Python Rocks, especially for Data scientist! 不是说 R 不好,我个人觉得 R 别别扭扭的,但是现在 R 很多,而且 R 作为数据分析是一门好语言。选择在个人,我只是说 Python Rocks!

回答你的问题:
不过现在要学数据分析的话,我可以从哪里着手?
首先,依据你的情况,最好是有一个你熟悉背景的项目或者例子,不一定是「数据分析」项目,只要你能弄到数据,然后清楚要分析的对象和目的就好。

接下来说方法,现在有很多课程可以帮助你学习这些方法,具体哪个方法好,完全看你的问题是什么,根据目的选方法。具体有哪些方法,请参考:数据分析、挖掘的好书求推荐?鉴于你会 Python,推荐机器学习实战 (豆瓣)
从哪里弄到有分析价值的数据?
还是上面那句话,依据问题选方法,有问题了,数据其实也不愁了。其余,请参考:数据分析和挖掘有哪些公开的数据来源?
在开源社区有没有开源项目适合用来学习数据分析?
Python Rocks! scikit-learn: machine learning in Python scikit.learn 是非常非常棒的机器学习 package,文档详尽,更新速度快!你看例子,看源码,都能学到不少东西!其余,请参考:请问学习机器学习有哪些好工具推荐呢?另外,去 github 上搜搜吧,好多好东西!
可以自己动手做个什么项目来实践
Kaggle Competitions 从最下面的101开始,逐级往上!

Have fun and good luck!

-------------------------------------------------------------------------------------









回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表