为什么R语言是学习数据分析的第一选择

刚开始学习数据科学的人都会面对同一个问题:

不知道该先学习哪种编程语言。

不仅仅是编程语言,像Tableau,SPSS等软件系统也是同样的情况。有越来越多的工具和编程语言,很难知道该选择哪一种。

事实是,你的时间有限。学习一门新的编程语言相当于一项巨大的投资,因此在选择语言时需要有战略性。

很明显,一些语言会给你的投资带来很高的回报(付出的时间和金钱投资)。然而其他语言可能是你每年只用几次的纯粹辅助工具。

我给你的建议就是:先学习R语言

专注于一种语言

在说明为什么你应该学习R语言之前,我想强调的是,在开始学习数据科学时,你应该学习一种语言。

有些人问我是否应该学习在学R语言的同时学习Python。我的答案基本上是否定的,除非你需要使用一种以上的语言,否则你应该选择一种语言进行学习。

专注于一种编程语言的原因是,你需要更多地关注过程和技术,而不是语法。你需要掌握如何通过数据科学工具来分析数据,以及如何解决问题。事实证明,R语言是最佳的选择。

学习R语言

我建议你将R语言作为你的第一个“数据科学编程语言”。虽然也有例外,比如特定的项目需要。

因为R语言正在成为数据科学的“通用语言”

这并不是说R语言是唯一的语言,也不是说它是每个工作的最佳工具。然而,它是使用最广泛的,而且越来越受欢迎。

O' reilly media在过去几年中进行了一系列数据科学调查,分析了数据科学趋势。在2016年的调查报告中,R语言是最常用的编程语言(如果排除SQL的话,在本文中它不能称为编程语言)。57%的调查人群使用R语言(使用Python的比例为54%)。

另一个常见的语言排名系统是Redmonk编程语言排名,它由GitHub(代码行)和Stack Overflow(标签数)的流行指数派生而来。截至2016年11月,R语言在所有编程语言中排名第13。此外,R语言多年来一直呈持续上升趋势:

此外还有TIOBE指数(按搜索引擎搜索次数对编程语言进行排名)。在TIOBE指数上,R语言十年来呈现出稳定上升趋势。

使用R语言的公司

在招聘数据科学家的几家顶级公司中,R语言使用程度非常高。在我认为现代经济中最优秀的两家公司——Google和Facebook 都有使用R语言数据科学家。

除了像Google,Facebook和微软这样的科技巨头,R语言在美国银行,福特,TechCrunch,Uber和Trulia等众多公司都有广泛的应用。

R语言在学术界很受欢迎

R语言不仅仅是一个行业工具。它在学术科学家和研究人员中也非常受欢迎,最近著名《自然》杂志上发表的R语言概况也证实了这一点。

R语言在学术界的备受欢迎,因为它创造了供应行业的人才库。

换句话说,如果最优秀、最聪明的人群在大学学习了R语言,这将加大R语言在行业中的重要性。当学者、博士和研究人员离开学术界从事商业活动时,他们又将产生对R语言人才的需求。

此外,随着数据科学的成熟,商业届的数据科学家将需要与学术届的科学家进行更多的沟通。我们需要借鉴技术和交流观点。随着世界转变为数据流时,学术科学与面向商业的数据科学之间的界线会变得模糊。

通过R语言学习“数据科学的技能”是最简单的

然而,R语言的普及性并不是学习R语言的唯一原因。

在选择语言时,你需要一种在这些领域都具有重要功能的语言。同时你需要执行这些任务的工具,以及在你所选语言中来学习这些技能的资源。

如上所述,你更多地需要关注流程和技术,而不是语法。

你需要学习如何解决问题。

你需要学习如何在数据中找到真知灼见。

为此,你需要掌握数据科学的3个核心技能领域:数据处理,数据可视化和机器学习。在R语言中掌握这些技能将比任何其他语言都容易。

数据处理

一般来说,数据科学中80%的工作都是数据处理。通常情况下,你需要花费大量时间来整理你的数据。R语言中有一些很棒的数据管理工具。

R语言中的dplyr包使数据处理变得容易,这可以大大简化数据处理的工作流程。

数据可视化

ggplot2是最佳的数据可视化工具之一。ggplot2的好处是,在学习语法的同时,还学习如何思考数据可视化。

所有的统计可视化都有很深层的结构。存在构建数据可视化的高度结构化框架,ggplot2基于该框架。

此外,当将ggplot2和dplyr组合在一起时,从数据中得出相关见解几乎毫不费力。

机器学习

最后,还有机器学习。虽然我认为大多数数据科学初学者不应该急于学习机器学习(首先掌握数据探索更为重要),机器学习是一项重要的技能。当数据探索不再带来洞察力时,你则需要更强大的工具。

之后再学习更多的语言和工具

最终你会想学习更多的编程语言。就像工具箱中没有一个最好的工具一样,没有一种编程语言能够完美的解决你所有的数据问题。

以下是在学习R语言之后,你可以考虑学习的语言:

Python

Python是一种值得考虑的多用途编程语言。在O'Reilly最近的调查中,Python是数据科学家中第二受欢迎的编程语言。它具有优秀的可视化工具,以及机器学习工具。我认为,对于大多数人来说Python是应该学习的第二种语言。

D3

我超爱D3。D3中创建的可视化效果很棒,而且D3可视化的交互性非常适合构建仪表板。但它的伸缩性不够好。对我来说,D3更像是一个“工匠的工具”,它非常适合构建一个优雅的数据可视化,但是在需要几十个合作伙伴支持的情况下,手动创建这样的东西是不可能的。

与此同时,我还乐观地认为,R语言的ggvis将允许R语言用户创建高度动态和交互性的可视化,因此在某种意义上,R语言用户需要学习R的ggvis而不是D3。

总结:学习R语言,并集中精力

如果你是初学者,R语言是很好的选择。同时需要专注于学习数据科学的技能。

在学习过程中,你可能会看到很多新技术和新工具,或者一些令人眼花缭乱的数据可视化。

看到其他人的成果(并发现他们正在使用不同的工具)可能会导致你想尝试其他的东西。相信我:你需要集中注意力。你需要花上几个月(或更长时间)才能真正投入到一个工具中。

如上所述,如果你确实希望在数据科学工作流程中提高技能。至少在数据可视化和数据处理方面,你得具备扎实的技能。

在R语言上花费100个小时,将比在10个不同工具上各花费10个小时得到更高的回报。最后,通过集中精力,你的时间回报率将更高。不要因为“最新,最炫的事物”而分心。 

本文作者:Sharp Sight Labs

来源:51CTO

时间: 2024-08-31 17:06:02

为什么R语言是学习数据分析的第一选择的相关文章

如何让Hadoop结合R语言做大数据分析?

为什么要让Hadoop结合R语言? R语言和Hadoop让我们体会到了,两种技术在各自领域的强大.很多http://www.aliyun.com/zixun/aggregation/7155.html">开发人员在计算机的角度,都会提出下面2个问题.问题1: Hadoop的家族如此之强大,为什么还要结合R语言? 问题2: Mahout同样可以做数据挖掘和机器学习,和R语言的区别是什么?下面我尝试着做一个解答:问题1: Hadoop的家族如此之强大,为什么还要结合R语言? a. Hadoop

R语言试用开源数据分析平台的4个不错的理由

R 已证明自己是不断成长的大数据领域的一个有用工具,并且已集成到多个商用包中,比如 IBM SPSS® 和 InfoSphere®,以及 Mathematica.本文提供了一位统计学家对 R 的价值的看法. 您可能已经听说过 R.或许您阅读过类似于 Sam Siewert 的 "云中的大数据" 这样的文章.您或许知道 R 是一种编程语言,而且知道它与统计学有关,但它是否适合您呢? 为什么选择 R? R 可以执行统计.您可以将它视为 SAS Analytics 等分析系统的竞争对手,更不

《R语言游戏数据分析与挖掘》一导读

前 言 为什么要写这本书 随着大数据的概念越来越流行,越来越多的企业开始重视数据,期待从数据中寻找有价值的结论,以指导公司管理层决策,最终创造更大的价值.但是在游戏行业,数据分析的发展相对缓慢,很多游戏公司是在发现人口红利消失后才逐渐重视数据,希望利用数据驱动产品.而在各种数据分析技术中,R语言作为一个可进行交互式数据分析和探索的强大平台,拥有举足轻重的作用.R语言的免费开源使得很多公司用它来处理数据.展示数据.分析数据.完成模型. 使用R语言可以进行游戏数据分析系统的搭建,可以对累积的海量游戏

跟我一起数据挖掘(9)——R语言

R是用于统计分析.绘图的语言和操作环境.R是属于GNU系统的一个自由.免费.源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具. 一.基本介绍: 1. 警告:在输入命令前请切换到英文模式.否则你的一大段代码可能因为一个中文状态的括号而报错,R语言的报错并不智能无法指出错误的具体位置.最可怕的是不报错但就是无法输出正确结果. 2. 警告:R语言区别大小写,所以对象A与对象a并不一样,在调用函数.R包时也要注意大小写. 3. R软件由R包组成,每个包里有各种函数.命令"library()&q

为什么要学习R语言

R的诞生 1992年, 肉丝 (Ross Ihaka)和 萝卜特 (Robert Gentleman)两个人在S语言(贝尔实验室开发的一种统计用编程语言)的基础上开始构思一种新的用于统计学分析的开源语言,直到1995年第一个版本正式发布(和各位年龄相仿).因为他们名字的第一个字母都是R,所以这门语言就被叫做R.这两个人都是统计学教授出身,再加上R语言的生父S语言,所以 R语言在统计学方面有着纯正的血统 ! 如果你平时的工作会涉及到统计学,那么接触R语言实在是太正常不过了. 另外,关于R语言的开发

R语言 lars包 lars()函数中文帮助文档(中英文对照)

lars(lars)lars()所属R语言包:lars                                          Fits Least Angle Regression, Lasso and Infinitesimal Forward Stagewise regression models                                         适用于最小角度回归,套索和无穷的前进Stagewise的回归模型                    

《R的极客理想—工具篇》—— 第1章 R语言基础包

第1章 R语言基础包 本章主要介绍了为什么要学习R语言,R语言软件的安装,R语言的开发工具,以及R语言中常用的几个软件包,以帮助读者快速了解R语言的工具包,激发读者对R语言的学习兴趣.

SEO培训真的是站长学SEO的第一选择吗?

大家好,我是木子成舟.刚接触SEO的时候,很多的新手站长都会面临这样那样的困难,这个时候相信大家都想找一个老师来帮自己指导指导,希望前方有一个指路的明灯,于是这样就催生了一个行业:SEO培训.SEO培训之所以兴兴向荣,离不开SEO的普及和市场的需求,于是紧接着很多的人都在搞SEO培训,似乎学习SEO非SEO培训不可,没有系统的学习SEO就做不好SEO更是我们大家都认可的一种观点.个人因为之前写过几篇文章,于是很多新手站长加我说想跟我学SEO,最近还有个朋友甚至主动提起愿意支付一定的费用,所以感触

《R语言数据分析》——导读

前 言 自20多年前发源于学术界以来,R语言已经成为统计分析的通用语言,活跃于众多产业领域.目前,越来越多的商业项目开始使用R,兼之R用户开发了数以千计易于上手的开发包,都使得R成为数据分析工程师及科学家最常用的工具. 本书将帮助读者熟悉R语言这一开源生态系统,并介绍一些基本的统计背景知识,以及一小部分相关的数学知识.我们将着重探讨使用R语言解决实际的问题. 由于数据科学家在数据的采集.清洗及重构上将耗费大量时间,因此本书首先将通过第一手实例来重点探讨从文件.数据库以及在线资源中导入数据的方法,