佳能小白一代二代区别求教,Python和R语言的区别

[译]作为编程语言,在数据科学领域Python正在取代R语言 - 简书
<div class="fixed-btn note-fixed-download" data-toggle="popover" data-placement="left" data-html="true" data-trigger="hover" data-content=''>
写了11278字,被16人关注,获得了60个喜欢
[译]作为编程语言,在数据科学领域Python正在取代R语言
在PhD中,R语言依然很火,但是在时代的大潮流中,Python是王者。
Matt Asay (From MongoDB)号
对于数据科学家来说,R语言无疑是他们的选择,但是Python正在抢夺R语言的地盘。
关于这个改变有很多的,或许最大的原因是相对于R语言的难以掌握的复杂编程环境来说,Python更加通用,而且更加简单。
在一个越来越依赖数据世界,“简单”肯定会取得胜利。
R语言:并不真的是编程语言
人们煞费苦心地学习R语言一部分原因是它并不是一门编程语言。正如专家John Cook指出,R语言实际是一种数据统计的交互环境,并不真的是一门编程语言。他建议,与其把R语言看成一种编程语言倒不如认为它有编程语言的特性。
而且,R语言看起来一点都不像传统的编程语言,这对于将要成为R语言开发者来说,很难掌握。
但是R语言对于像这些数据统计的工具,比如SAS,SPSS,如R语言对于分析师来说可以说是减少了复杂度,因为它合并了宏(Marcro)和矩阵语言,而在其他语言中,比如SPSS,就需要你自己去掌握。但是如果期待R语言可以像Stata一样,他们会失望的。
综上,R语言。。。是不一样的,让事情变难了。。。
Python:降低了数据科学的门槛
然而Python是非常容易学习的。就拿一件事情来说吧,大多开发者都熟悉Python,而且可以在多种程序中使用它。不像R语言,只能用户数据分析领域,一个开发者可以在首次用脚本编写她的网站或者别的程序的时候就体验Python语言。
当企业苦苦地让数据工作的时候,他们还煞费苦心的寻找合格的数据科学家。然而,往往这样的数据科学家已经为他们工作了,而且应该熟悉Python。因为根据用户的数据提供正确的分析是如此的重要,所以在复杂的用户数据下,企业自己培养的大数据技术人才比需要自己培训新应聘的数据科学家高效得多。就像 Gartnet 的
一个Python统治所有
先不说使用现成的Python人才库,使用Python最大的受益是增加使用同一种编程语言在不同程序中的效率。德克萨斯大学奥斯汀分校研究员 Tai Yarkoni 解释:
已经表明使用同一种语言进行开发和分析会受益匪浅。就这么一点来说吧,当你可以只用一种语言来做所有的事情,你没有必要折磨自己说,Ruby使用block代替缩进,或者你需要在Python中调用数组的len方法而不是array.length来获取数组的长度。而且,你永远不用担心项目中不同语言之间的接口问题。没有比在Python中处理相同的文字数据烦人了,最后把它们变成你想要的格式,然后才知道你不得不把它们以另一种格式写入磁盘,以至于你可以把它们转交给R语言或者Matlab来进行别的分析。个别的,这不是大问题。在Python中把它们以CSV格式或者JSON格式文件输出,在R中读取,进行加和。如果只用一种语言,所有这些都不再会有。
这并没有夸张的部分。当我们赞美合适的技术很好地解决了我们的问题的时候,技术就会胜出,这是通用的道理。就像 Optimization and Analytics 的 AppNexus 的董事,“在AppNexus面临的最大的挑战是如何在统一技术领域聘到多样的员工。Python为员工提供了不同的背景,特别是工程师,数学家,分析师---一种常见的,简单易懂的语言可以被公司用来定义新的功能原型。”
使用Python的主流的数据科学
Python在数据分析方面仍然欠缺一些R语言的丰富性,但是.要记住:Python成功的关键不是它处理神秘方法的能力上比R语言或者别的与前强,而是它容易学习和通用性。数据科学已经脱离初级极客的境界了,在上个月O'Reilly Strata大会上已经非常明显了。哲学博士们曾经常常出没的大会,现在普通的经济分析师和一些受企业派遣去分析大数据的人,已经成为此次大会的主要参加者。
这次新的大会更倾向于使用Python而不是R语言。Python相对来说简单易用,而且它们已经在别的项目中使用了它。在别的方面,人们更加倾向于已经精通的或者简单易学的工具而不是强大而复杂的工具,如果可能的话,应该避免使用这样强大而复杂的工具。
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
被以下专题收入,发现更多相似内容:
如果你是程序员,或者有一颗喜欢写程序的心,喜欢分享技术干货、项目经验、程序员日常囧事等等,欢迎投稿《程序员》专题。
专题主编:小...
· 259019人关注
本专题暂时关闭投稿。
请移步投稿语言·翻译专题 /collection/ef51d47f...
· 222311人关注
Pythoner的集中营, 收集关于Python的各种知识教程.
推荐文章和系列阅读:
1. Python 零基础入门资料...
· 10512人关注
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
选择支付方式:浏览器不支持嵌入式框架,或被配置为不显示嵌入式框架。苹果/安卓/wp
积分 664, 距离下一级还需 136 积分
权限: 自定义头衔, 签名中使用图片
道具: 彩虹炫, 涂鸦板, 雷达卡, 热点灯, 金钱卡, 显身卡, 匿名卡, 抢沙发下一级可获得
权限: 隐身
购买后可立即获得
权限: 隐身
道具: 金钱卡, 彩虹炫, 雷达卡, 热点灯, 涂鸦板
开心签到天数: 268 天连续签到: 1 天[LV.8]以坛为家I
可能问这个问题会很无脑,但是我还没有深入接触过Python,只是用过R语言。谁能帮我解答一下,这两者的主要区别呢?是否存在代替关系呢?
支持楼主:、
购买后,论坛将把您花费的资金全部奖励给楼主,以表示您对TA发好贴的支持
载入中......
本帖被以下文库推荐
& |主题: 10, 订阅: 1
一个是源于统计,慢慢可能会发展成一门语言;一个是编程语言,涉及到了统计大数据。两者本质是不同的,虽然有一些共性。
总评分:&经验 + 24&
论坛币 + 24&
您可以看看这两张帖子里,有没有您想要的答案:
总评分:&经验 + 60&
论坛币 + 60&
Be Captain Of Your Destiny!
casboryy 发表于
您可以看看这两张帖子里,有没有您想要的答案:
【Python/R】Python与R的区别和联系
注册吧 发表于
一个是源于统计,慢慢可能会发展成一门语言;一个是编程语言,涉及到了统计大数据。两者本质是不同的,虽然 ...谢谢您的解释,让我有了一个大体的了解
casboryy 发表于
您可以看看这两张帖子里,有没有您想要的答案:
【Python/R】Python与R的区别和联系谢谢,我会好好看看这两个帖子
tiantanshu 发表于
谢谢您的解释,让我有了一个大体的了解一些IT行业做大数据的,使用R的在探索将R进行面象对象编程。上面推荐你看的那篇文章总觉得写的有失偏颇
注册吧 发表于
一些IT行业做大数据的,使用R的在探索将R进行面象对象编程。上面推荐你看的那篇文章总觉得写的有失偏颇您好,我没太看懂您说的意思。在探索用R语言进行类似可以让大众看懂的编程吗?
那您对python的看法是什么呢?这个是一个怎样的程序呢?
另外由于我用惯了Rstudio 感觉那个操作界面很清晰明了。但是我找了几个python的类似平台,但是整体感觉给我的都不太一样。所以我一直很不情愿去额外的学习运用python。不知您对此是否有什么建议么?
tiantanshu 发表于
您好,我没太看懂您说的意思。在探索用R语言进行类似可以让大众看懂的编程吗?
那您对python的看法是什么 ...学习R之后学习python会感觉更简单,纯属个人看法哈。python现在用的比较多的IDE,WING和Eclipse,不妨试一下,还可以。不过python3和python2.x有不小的差别,所以如果现在不打算用,可以先看python3
tiantanshu 发表于
您好,我没太看懂您说的意思。在探索用R语言进行类似可以让大众看懂的编程吗?
那您对python的看法是什么 ...python是一个脚本语言,由于有很多的第三方包,编写代码简单简洁效率高,语言风格也很独特,很喜欢。python在数据处理上很不错,我是看老外的博客发现好多用python的,就学了下。和mongodg等等数据库的支持也很好,总之用起来很方便。
对于R其实了解的没有python多,学校的时候知道一点,去年自学了R in Action,实际上没有用过,了解很浅。R是一个统计方面的软件,专业性是python不能比的,在可视化方面也不错。因而做数据分析、统计检验、建模的优势非常明显。
初级学术勋章
初级学术勋章
初级热心勋章
初级热心勋章
初级信用勋章
初级信用勋章
中级学术勋章
中级学术勋章
中级热心勋章
中级热心勋章
中级信用勋章
中级信用勋章
高级学术勋章
高级学术勋章
高级热心勋章
高级热心勋章
无限扩大经管职场人脉圈!每天抽选10位免费名额,现在就扫& 论坛VIP& 贵宾会员& 可免费加入
加入我们,立即就学扫码下载「就学」app& Join us!& JoinLearn&
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
如有投资本站或合作意向,请联系(010-);
邮箱:service@pinggu.org
投诉或不良信息处理:(010-)
京ICP证090565号
京公网安备号
论坛法律顾问:王进律师什么是R语言?
R语言,一种自由软件编程语言与操作环境,主要用于统计分析、绘图、数据挖掘。R本来是由来自新西兰奥克兰大学的罗斯·伊哈卡和罗伯特·杰特曼开发(也因此称为R),现在由“R开发核心团队”负责开发。R基于S语言的一个GNU计划项目,所以也可以当作S语言的一种实现,通常用S语言编写的代码都可以不作修改的在R环境下运行。R的语法是来自Scheme。
R的源代码可自由下载使用,亦有已编译的可执行文件版本可以下载,可在多种平台下运行,包括UNIX(也包括FreeBSD和Linux)、Windows和MacOS。R主要是以命令行操作,同时有人开发了几种图形用户界面。
R的功能能够通过由用户撰写的包增强。增加的功能有特殊的统计技术、绘图功能,以及编程接口和数据输出/输入功能。这些软件包是由R语言、LaTeX、Java及最常用C语言和Fortran撰写。下载的可执行文件版本会连同一批核心功能的软件包,而根据CRAN纪录有过千种不同的软件包。其中有几款较为常用,例如用于经济计量、财经分析、人文科学研究以及人工智能。
Python与R语言的共同特点
Python和R在数据分析和数据挖掘方面都有比较专业和全面的模块,很多常用的功能,比如矩阵运算、向量运算等都有比较高级的用法
Python和R两门语言有多平台适应性,linux、window都可以使用,并且代码可移植性强
Python和R比较贴近MATLAB以及minitab等常用的数学工具
Python与R语言的区别
数据结构方面,由于是从科学计算的角度出发,R中的数据结构非常的简单,主要包括向量(一维)、多维数组(二维时为矩阵)、列表(非结构化数据)、数据框(结构化数据)。而 Python 则包含更丰富的数据结构来实现数据更精准的访问和内存控制,多维数组(可读写、有序)、元组(只读、有序)、集合(唯一、无序)、字典(Key-Value)等等。
Python与R相比速度要快。Python可以直接处理上G的数据;R不行,R分析数据时需要先通过数据库把大数据转化为小数据(通过groupby)才能交给R做分析,因此R不可能直接分析行为详单,只能分析统计结果。
Python是一套比较平衡的语言,各方面都可以,无论是对其他语言的调用,和数据源的连接、读取,对系统的操作,还是正则表达和文字处理,Python都有着明显优势。 而R是在统计方面比较突出。
Python与R语言的应用场景
应用Python的场景
1、网络爬虫与网页抓取
36大数据(/)
Python 的 beautifulsoup 和 Scrapy 更加成熟、功能更强大,结合django-scrapy我们可以很快的构建一个定制化的爬虫管理系统。
2、内容管理系统
36大数据(/)
Python 只用 sqlachemy 通过ORM的方式,一个包就解决了多种资料库连接的问题,且在生产环境中广泛使用。基于Django,Python可以快速通过ORM建立资料库、后台管理系统,而R中的 Shiny 的鉴权功能暂时还需要付费使用。
3、API的构建
36大数据(/)
通过Flask、Tornado等标准的网络处理库,Python也可以快速实现轻量级的API,而R则较为复杂。
应用R语言的场景
1、统计分析
尽管 Python 里Scipy、Pandas、statsmodels提供了一系列统计工具 ,R 本身是专门为统计分析应用建立的,所以拥有更多此类工具。
2、互动式面板
R 的 shiny 和 shiny dashboard 可以较快地构建定制可视化页面。速度更快,所需代码更少。
总的来说,Python 的 pandas 借鉴了R的dataframes,R 中的 rvest 则参考了 Python的BeautifulSoup,两种语言在一定程度上存在互补性,通常,我们认为 Python 比 R 在计算机编程、网络爬虫上更有优势,而 R 在统计分析上是一种更高效的独立数据分析工具。所以说,同时学会Python和R这两把刷子才是数据科学的王道。
本文来自微信公众账号提交,由微讯啦收录,转载请注明出处。
微信扫码 分享文章

我要回帖

更多关于 佳能小白一代二代区别 的文章

 

随机推荐