京公网安备 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-08-20在数据分析领域有一句核心准则:垃圾数据进,垃圾数据出。数据清洗是数据分析、数据建模、数据可视化之前的必经前置工序,也是保 ...
2026-08-20 很多数据分析师做过按月份的销售额趋势图,画过按天的流量折线图,但当被问到“时间序列和普通数据有什么本质区别”“季节性 ...
2026-08-20在Python数据分析与数据清洗工作中,Pandas是最核心的数据处理库,DataFrame是结构化数据的标准存储格式。在实时数据采集、循环 ...
2026-08-19在零售行业大数据分析与精细化运营领域,纸尿裤旁摆放啤酒是最经典、最具代表性的商业案例。两种看似毫无关联的商品,一个是婴幼 ...
2026-08-19 很多数据分析师能熟练地计算指标、搭建标签体系,但当被问到“画像到底在解决什么问题”“画像和标签是什么关系”“画像如何 ...
2026-08-19在数据分析、业务监控、质量检测与风险管控工作中,数据波动性是衡量数据稳定性、业务健康度、结果可信度的核心依据。数据波动代 ...
2026-08-18很多分析师在设计标签时思路清晰,但真到落地环节却面临“数据在手,不知如何转化为可用标签”的困境:或因加工方式选择不当导致 ...
2026-08-18在数据分析、业务评价、产品评级、用户分层与综合决策场景中,单一指标往往无法全面、客观地评价事物整体水平。现实中的评价对象 ...
2026-08-18在数理统计、假设检验、数据分析与机器学习领域中,卡方分布(χ²分布)是继正态分布、t分布之后最重要的连续型概率分布之一。 ...
2026-08-17在Python数据清洗、文本校验、账号密码规则校验、脏数据过滤、字符串规整化处理中,正则表达式是最高效、最常用的文本匹配工具。 ...
2026-08-17 很多分析师每天和数据打交道,但当被问到“标签是什么”“标签和指标有什么区别”“标签体系如何设计”时,却常常答不上来。 ...
2026-08-17手游行业具备用户迭代快、竞争激烈、用户粘性易流失的典型特征。随着新游持续上线、玩家审美升级、玩法疲劳等问题出现,存量用户 ...
2026-08-14在数字化产品运营、商业数据分析、业务增长管理中,零散的指标统计无法支撑系统性的业务决策。单一的点击率、转化率、销量数据只 ...
2026-08-14 很多数据分析师每天都在写SQL,但当被问到“数据查询语言(DQL)的本质是什么”“SELECT语句中各子句的书写顺序与实际执行顺 ...
2026-08-14在数据库数据分析、数据清洗、报表统计与业务查询场景中,日期时间是最高频、最核心的基础字段。数据库中存储的日期格式多样,包 ...
2026-08-13在数据统计分析与数据清洗工作中,箱线图是一种简洁高效、客观性强的数据可视化图表,能够直观呈现数据集的分布特征、离散程度和 ...
2026-08-13 很多数据分析师写过无数个SELECT查询,但当被问到“如何新建一张表来固化中间数据”“创建视图和创建物理表有什么区别”“视 ...
2026-08-13在自动化办公、数据采集、定时统计、日志清理、系统监控等场景中,程序往往需要按照固定时间间隔重复执行指定任务,这种运行机制 ...
2026-08-12在数据分析日常工作中,Excel数据筛选是数据清洗、数据提取、样本筛选的核心基础操作。传统Excel手动筛选、函数筛选方式,面对多 ...
2026-08-12