提前声明,本人既不是技术大佬亦不是名流巨P,随心杂记,落笔成章,故此篇既不是指导,亦不成宝典,只求为那些孤独、迷茫的数据挖掘自学者带来丝丝光明和希望。

  言归正传,先自我介绍一下,本人985硕士毕业,本科是数学专业,研究生是物流专业,很多人认为数学专业搞数据挖掘那是科班出身,这里我很负责任的纠正一下,关系真不大,所以,奉劝各位想转入数据挖掘的朋友,不用太过于纠结你的专业,只要你学过高数、编过C语言或者VB、VF就可以尝试进入这个行业。我16年硕士毕业后有幸进入某互联网零售公司,最初主要是用Excel做经营数据报表,就是行话里的表哥表姐,后因领导推荐有幸参加CDA数据分析师培训,自此接触到了数据分析与数据挖掘行业,以后3年就开始了自学数据分析和数据挖掘的漫长、痛苦、孤独历程。18年年初通过公司内招进入IT部门从事数据管理工作,这期间主要是接触数据管理、数据经营、数据架构、数据分析方面的东西,算是第一次感受到了学有所用的快感,一年后辞职,加入上海一家信息工作任高级数据分析师,工资也涨了不少,目前又换了一次工作,工资涨幅很可观,所以,这个行业的增值很快,人才缺口也很大,算得上是比朝阳还朝阳的行业。

  下面主要介绍一下自学经验

  因个人经济条件限制,我是边工作边学习,三年里走了很多弯路,也曾无数次想过放弃,最辛苦的时候是凌晨两点半睡觉,早上六点起床,一直坚持了九个月,一度因劳累过度,经常头疼流鼻血,所以要想做数据挖掘,首先得做好吃苦的准备。回望自己的三年自学路,知识体系可以划分为三条路线。

  1、编程能力--R和Python

  编程语言方面,我个人倾向于首选Python,Python对数据挖掘模型和方法的封装可以说是最全面、最灵活的,面向对象的编程语言风格简练、易学,经常被大牛调侃称“伪代码”,另外,目前企业里用的最多,要求最多的也是Python语言。

  R语言——统计学家风格的语言,Python数据挖掘模块的四把利刃--numpy、pandas、matplotlib和sklearn的整体风格跟R语言很相接近,但是个人感觉R语言在企业中的应用不如python多,另外R语言很吃内存,所以被列入第二选择

  其他语言——SAS、Perl等等,这些数据挖掘语言,我个人没有深入学习,但是基本的思想跟R差不多,大家可以按照自己兴趣选择。没有最好的语言只有最适合自己的语言。

  建议大家对于编程语言的选择不用太纠结,学会第一个以后,其他的学起来就会很容易,我个人是先学了一年R语言后,python语言基本上只用了一个月就差不多学会了

  语言的学习建议大家有时间、有财富的前提下,就报补习班学习,比如:尚学堂、CDA、天善智能等,没钱没时间的小伙伴可以选择某宝上购买在线视频学习,视频学习入门后,再看几本书:《利用python进行数据分析》、《python从入门到精通》、《python核心编程》,《统计建模与R语言》

  2、统计学基础、算法、模型

  统计学基础除了大学教程里那些课本,我个人强烈推荐李航著的《统计学习方法》,模型算法方面强烈推荐周志华的《机器学习》,深度学习方面“花书”和“蜥蜴书”是必读书目,这几本本至少要读三遍以上,能够自己画出思维导图最好。数据结构和算法方面主要通过极客时间和拉钩教育的音视频课程学习,面试前建议去力扣上刷几道题,基本上大厂的面试都是从哪里抄来的算法题。

  3、Linux、数据架构方面

  这一块基本上就是一个辅助加成功能,Linux不必多说,现在的企业系统基本上都是基于Linux操作系统的,需要在这个环境下进行编程。数据架构方面,大企业用得到,比如hive、Spark、Hadoop等,当然SQL是必备的技能。