京公网安备 11010802034615号
经营许可证编号:京B2-20210330
入门数据分析,我应该学习什么编程语言
很多时候,当和人们讨论怎么开始学习数据科学,一个疑惑总是出现在我们面前:
我不知道应该学什么编程语言。
不仅仅是编程语言,这还包括软件系统,例如TABLEAU,SPSS等,这是个更加广阔范畴的工具和编程语言的集合,让人非常难清楚该如何选择。
我很明白。数年前,我刚开始把目光集中于数据科学的时候,我浏览了所有流行的编程语言Python,R,SAS,D3,并不包括那些虽然触手可及,但是实在是在数据分析方面没有优势的语言,例如perl,BASH和JAVA。即使在今天,我也只是从别处得到建议(从一个非常出名的数据科学博客)去使用复杂一点的工具,例如UNIX的AWK和SED(不用担心你对这两个没有任何印象,因为你没有必要学,至少在开始阶段)
这里有非常多的建议,非常多的素材,非常多的选择,这使得了解清楚最开始学习什么变得非常困难。这是一片知识的山峰,并且非常难找到哪里有着“金矿”,你得到的教训就是假以时日的探寻搜索之后会给你丰厚的回报。
你要清楚,某些语言会让你受益匪浅(无论是在时间上还是金钱上),其他的语言是辅助用的工具,顶多陪伴你数年。
让我把这堆话简化吧:先学R语言
集中在一种语言上
在介绍给你为何要学R之前,我需要和你强调的是你应该在开始学习数据科学的时候,学一项语言。
就像我在SHARPSIGHT LAB写的R语言新手教程一样,我被数个人问了为何不同时去学PYTHON。我的回答一贯没变。否决。只有直到你有非常直接的需要多于一种语言来使用的时候,你才能去学。
为何要集中在一项语言上呢?
因为你需要集中更多时间在进程和技术上,而非语法上。你要了解如何理解数据以及怎么用这数据科学的工具去解决问题。总而言之,我认为r是最佳的做这个的编程语言。
学习R
不做保留地,我仍然推荐你应该学习R作为你的第一项数据科学编程语言。虽然总有例外的情况(例如你为了一些特殊的计划需要),我认为R是你起步时最好的选择。
这就是为什么
R即将变成数据科学里的“国际话”
R即将成为数据科学里的“国际话”,这并不是说这个语言是这一界的唯一语言,或者是每个人最佳的工具,但是,毫无疑问,这个是最收到广泛应用的,也是使用人不断上升的。
正如我所写过的那样,O’REILLYMEDIA做了一个调查于2014年,从而了解各种数据学家爱用的工具,他们发现R成了之中最流行的(如果你把SQL从“像样的”语言里踢出去的话)
从更广阔的视野看,这里有别的在综合层面上的关于编程语言的普及度(不仅仅从数据学家的人群里计算)例如,REDMONK使用验证讨论(在STACK OVERFLOW上)和计算使用次数(在GITHUB上)测量出了编程语言的流行程度。而在他们最新的排位表上,R语言排名13,算是在统计学的语言中最高者。REDMONK同样注意到R的流行率在不断增加。
一个TIOBE给出的相近的排位(通过搜索引擎的搜索次数测定)便表现了R的普及率趋势宛如滔滔江水无法阻挡其前进。
从这两个组织对于所有编程语言的排位评价来看,当你看着这些数据,你就会深刻知道R是目前最流行以及最通用的编程语言了。
用R的公司们
R在数个最好的招聘数据学家的公司里被重用。谷歌和脸书——我认为的最好的两个在我们现代经济里存活下来的公司——同样都有数据学家使用R
(为了让人理解宛如脸书这样这么大的公司使用R,我会常常去查阅SOLOMONMESSING的博客。那是一个脸书的数据学家开的,而他的博客上写的R语言十分出色)
就像分析学的进步于目前所说那样,“R也是作为微软公司的数据科学家们的选择,当他们用BING,AZURE,OFFICE, 还有销售,市场经营以及经济建筑的时候常能看到它的身影。
那些技术的巨人公司例如谷歌,脸书还有微软,R非常广泛地适用于各种公司,包括了美国银行,福特,TECHCRUNCH,UBER和TRULIA。
R在学术界的流行
R不仅仅是企业的工具。也是在学术领域的科学家和研究者的宠儿。最近一份文件展示了R在调查中展示出来的情况——
R在学术领域的重要性体现在其培养出来的技术表现出了企业范儿。
另一种说法,如果学院顶尖的人在他们学习的时候训练R语言的用法,那么在企业就业的领域,R的重要性就会上升。这种学术界的,围绕于博士间的,研究者的支持会让他们在下海经商的时候创造自己对人的用R的方法。
更值得一提,作为数据科学的前线,忙于事务的数据工作者会需要和更多的学院派科学家接触,我们将会借助他们的技术以及和他们共享创意。就像我们建设和栽种并且将这个世界变成数据流一样,学术科技和基于事务的数据科学总能连成一条模糊的桥梁。
认识到R里面最简单的是数据科学的技能
R的热门并非是学习它的唯一理由。
非常重要的是,如果你真的想掌握数据科学,那么你应该学这些核心的技术领域。数据操纵,数据视觉化,机械性学习。
选择语言时,你应该保证它有同时能适应这三项领域的能力。你需要工具去完成这些事就像你认真地学习你选择的语言一样。
就像我说的,你要集中于进程和技术方面,而不是语法。
你需要学会怎么思考解决方法。
你需要学会发现内在的数据。
为了做到这些,你就需要精通上面这三样了。精通这三样会让你在R的学习之路上十分轻松,比学别的更轻松。
数据汇总
有句话常说,八成的数据科学工作都是操纵数据,无论是否有这么多,你都要去做,用非常多的时间去做。把数据加工成你想要的形状,而R有着最佳的工具帮你实现。
Dpylr包可以让你的数据操作变得很简易,这是我几年来一直常用的。当你活用起来的时候你会漂亮地完成数据流的。
数据可视化
Ggplot2作为最好的年度数据可视化工具之一。而它的绝妙之处在当你学了语法之后你也就懂得了如何做到数据可视化了。
我说过很多次,所有定型了的视图都有着深层的共同结构。而这个包正是基于这个结构,学会了,你就懂了。
还有,当你把这两个组合起来的时候,这项工作将会变得事半功倍。
机械式学习
最后,来到了这个部分。虽然我认为初学者应该等阵子才开始学(毕竟数据探索更加重要),但还是很重要,当你发现数据探索阻挡住你前进脚步的时候,你就需要新家伙了。
当你准备好学这个之后,R有些东西适合你。
学更多的工具和知识!
先弄清楚,你要学习更多的语言,就像工具箱里没有单一的最好的工具一样,同样没有一种语言能万能应对所有情况的。而当你精通R的这三样利器之时,你也就到了学习别的语言去对应各种场合问题的时候。
这里给你个学完R之后其他选择的快速浏览
.Python
这是个非常好的多任务编程语言而你应该在某些场合里用它。根据ORELLy的近期调查显示,这语言是第二热门的(在数据科学家中),它拥有非常好的可视化工具,也有很好的机械化学习能力,对于大多数人,这是第二门语言的选择。
.D3
我喜欢D3,它的可视化非常漂亮,而起互动性非常适合组建公告栏。我的成品并不非常完好的匹配上。对我来说,D3更多像是雕像工具一般,这是用来做非常优美的数据可视化工具,但是制作出来的东西并不会分析其中产生的冗余和各种情况,当你有非常多的对应客户端包含着新分析和近场联系
我非常乐观。对于所说的GGVIS会让R的用户做出高质量而美观可以互动的可视化。所以有的时候,R用户可以学GGVIS代替。Summary: LearnR, and focus your efforts
所以详细斟酌,挑好语言,当你开始的时候,R几乎是最好的选择,还有,要非常认真地学习技术。
另外,学习的时候千万不要就看些引人注目的。你就像是要去看那些新技术和工具的表现和阐述,只要看这些人们做的可视化数据和组织。看看别人做出来的大作(找出用啥做的)这会带着你去试试看新东西,信我这句,你需要集中,而不是被东西分散精力,你要画上数个月去深入学习一个工具。然后就像我说的,你确实需要建立起完整的技术于数据科学的洪流上。你需要有扎实的技巧,至少在可视化和组织上。你需要有能力去做些复杂的数据探索(用R)在你开始更深层的学习之前花100小时在R会学到比各自10小时在不同工具上学的好。最好,你的时间利用会因为你对目的的关心而非常高。不要被些吸引人的东西迷惑了。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在机器学习建模与数据分析实战中,特征维度爆炸、冗余信息干扰、模型泛化能力差是高频痛点。面对用户画像、企业经营、医疗检测、 ...
2026-03-26在这个数据无处不在的时代,数据分析能力已不再是数据从业者的专属技能,而是成为了职场人、管理者、创业者乃至个人发展的核心竞 ...
2026-03-26在CDA(Certified Data Analyst)数据分析师的能力体系中,线性回归是连接描述性统计与预测性分析的关键桥梁,也是CDA二级认证的 ...
2026-03-26在数据分析、市场研究、用户画像构建、学术研究等场景中,我们常常会遇到多维度、多指标的数据难题:比如调研用户消费行为时,收 ...
2026-03-25在流量红利见顶、获客成本持续攀升的当下,营销正从“广撒网”的经验主义,转向“精耕细作”的数据驱动主义。数据不再是营销的辅 ...
2026-03-25在CDA(Certified Data Analyst)数据分析师的全流程工作中,无论是前期的数据探索、影响因素排查,还是中期的特征筛选、模型搭 ...
2026-03-25在当下数据驱动决策的职场环境中,A/B测试早已成为互联网产品、运营、营销乃至产品迭代优化的核心手段,小到一个按钮的颜色、文 ...
2026-03-24在统计学数据分析中,尤其是分类数据的分析场景里,卡方检验和显著性检验是两个高频出现的概念,很多初学者甚至有一定统计基础的 ...
2026-03-24在CDA(Certified Data Analyst)数据分析师的日常业务分析与统计建模工作中,多组数据差异对比是高频且核心的分析场景。比如验 ...
2026-03-24日常用Excel做数据管理、台账维护、报表整理时,添加备注列是高频操作——用来标注异常、说明业务背景、记录处理进度、补充关键 ...
2026-03-23作为业内主流的自助式数据可视化工具,Tableau凭借拖拽式操作、强大的数据联动能力、灵活的仪表板搭建,成为数据分析师、业务人 ...
2026-03-23在CDA(Certified Data Analyst)数据分析师的日常工作与认证考核中,分类变量的关联分析是高频核心场景。用户性别是否影响商品 ...
2026-03-23在数据工作的全流程中,数据清洗是最基础、最耗时,同时也是最关键的核心环节,无论后续是做常规数据分析、可视化报表,还是开展 ...
2026-03-20在大数据与数据驱动决策的当下,“数据分析”与“数据挖掘”是高频出现的两个核心概念,也是很多职场人、入门学习者容易混淆的术 ...
2026-03-20在CDA(Certified Data Analyst)数据分析师的全流程工作闭环中,统计制图是连接严谨统计分析与高效业务沟通的关键纽带,更是CDA ...
2026-03-20在MySQL数据库优化中,分区表是处理海量数据的核心手段——通过将大表按分区键(如时间、地域、ID范围)分割为多个独立的小分区 ...
2026-03-19在商业智能与数据可视化领域,同比、环比增长率是分析数据变化趋势的核心指标——同比(YoY)聚焦“长期趋势”,通过当前周期与 ...
2026-03-19在数据分析与建模领域,流传着一句行业共识:“数据决定上限,特征决定下限”。对CDA(Certified Data Analyst)数据分析师而言 ...
2026-03-19机器学习算法工程的核心价值,在于将理论算法转化为可落地、可复用、高可靠的工程化解决方案,解决实际业务中的痛点问题。不同于 ...
2026-03-18在动态系统状态估计与目标跟踪领域,高精度、高鲁棒性的状态感知是机器人导航、自动驾驶、工业控制、目标检测等场景的核心需求。 ...
2026-03-18