Python与R语言的简要对比


Posted in Python onNovember 14, 2017

数据挖掘技术日趋成熟和复杂,随着互联网发展以及大批海量数据的到来,之前传统的依靠spss、SAS等可视化工具实现数据挖掘建模已经越来越不能满足日常需求,依据美国对数据科学家(data scientist)的要求,想成为一名真正的数据科学家,编程实现算法以及编程实现建模已经是必要条件;目前很多从事数据挖掘工作的人,大多都是出身非计算机专业,本身对编程基础比较低,所以找到一门快速上手而又高效的编程语言是至关重要的,好的工具和编程语言可以起到事半功倍的效果。

目前在数据挖掘算法方面用的最多的编程语言有:Java、C++、C、Python、R等等

R语言作为统计界第一语言(软件),很多时候与我们号称分析界第一语言的Python老是被人拿起来对比,所以今天专门做了一个表格,简介一下R语言与Python语言的对比情况。

首先还是我Python神图压镇:

Python与R语言的简要对比

首先介绍一下R语言吧:

有个小段子,说为什么要叫R语言呢?就是因为两位创始人的名字,都是以"R"开头的,所以,干脆一拍即合,就叫R语言吧……

Python与R语言的简要对比

R语言有很多的特点……当然,看这张图,是不是觉得很眼熟啊,没错,如果看过以前那篇“Python大法好”的文章的同学,发现,R语言怎么和Python的特性这么相似捏?

Python与R语言的简要对比

其实R也有很多自己特性,下面是它最显著的几个特性:

1、就是命令模式。Python虽然也支持命令模式,但是相对来说,更偏向于流程控制语句,也就是可以写一堆语句,然后执行。R本身基本上不需要用到流程控制(当然,它也支持流程控制)。

2、就是交互性。这样是命令模式的一个特点,敲回车,出结果。但是又不像SPSS那种用鼠标扎针的交互方式(在键盘上运指如飞逼格瞬间提升很多……好莱坞大片里面,高手黑客都是不用鼠标的,当然,这样很合理,SSH或者Telent到远程服务器上,怎么鼠标?)

3、也是R语言最大的特点,统计学特性……好吧R语言与其他所有计算机语言最大的本质区别,就是它是一门统计学家发明的语言(其他语言,基本上都是码农发明的,当然,也有数学家发明的),那么就有很多神奇特点。

比如:赋值的时候,不用等号(=),用的是指向(<-),带来的问题就是要写a<-5

这种语句,就需要a<(-5)这样写。

比如对象下面的属性,不用点(.),而是用刀乐($)。当然,点也能用,但是又带来各种问题,比如R语言的变量命名法则不用遵循匈牙利法则……可以用中文啊有木有:

Python与R语言的简要对比

最反人类(反(程序)猿类)的设计,就是它的数组下标从1开始啊有木有!!所有的程序语言都是从0开始的有木有啊!!

最后就是内存问题:R语言被要求把所有数据都加载到内存里面去进行运行……我卖噶!!现在动辄GB没事就TB就数据,作死要不要做得这么彻底?(当然,现在Spark也支持R了……这是一个好消息,大家都是内存计算,难兄难弟啊)

最后贴出我Python大法与R大法的对比图:

Python与R语言的简要对比

详细指标项如下:

Python程序猿经常说的一句话:别看我们运行慢,但是我们写得快啊……但是这个对比R就没优势了,R的代码量比Python更少……当然,是比R能够完成的任务的情况下。

实际上这种对比并没有太大的意义,比较硬要说R是一种语言,还不如说它更像是一个分析工具,是一个软件……而Python是一个支持大型软件工程项目的开发语言(不信,你用R写个web网站我看看……Python就可以。)

Python与R语言的简要对比

总结

以上就是本文关于Python与R语言的简要对比的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:

如有不足之处,欢迎留言指出。

Python 相关文章推荐
Python的Django框架中使用SQLAlchemy操作数据库的教程
Jun 02 Python
python3实现抓取网页资源的 N 种方法
May 02 Python
Python2.7读取PDF文件的方法示例
Jul 13 Python
python3+PyQt5使用数据库窗口视图
Apr 24 Python
查看Django和flask版本的方法
May 14 Python
Python并行分布式框架Celery详解
Oct 15 Python
python发送多人邮件没有展示收件人问题的解决方法
Jun 21 Python
Python Gitlab Api 使用方法
Aug 28 Python
python实现计算器功能
Oct 31 Python
tensorflow入门:TFRecordDataset变长数据的batch读取详解
Jan 20 Python
Python 远程开关机的方法
Nov 18 Python
在pyCharm中下载第三方库的方法
Apr 18 Python
Python基础语言学习笔记总结(精华)
Nov 14 #Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
Nov 14 #Python
python中os和sys模块的区别与常用方法总结
Nov 14 #Python
Python 将RGB图像转换为Pytho灰度图像的实例
Nov 14 #Python
人机交互程序 python实现人机对话
Nov 14 #Python
python密码错误三次锁定(实例讲解)
Nov 14 #Python
Python如何快速上手? 快速掌握一门新语言的方法
Nov 14 #Python
You might like
PHP 创建标签云函数代码
2010/05/26 PHP
关于url地址传参数时字符串有回车造成页面脚本赋值失败的解决方法
2013/06/28 PHP
xheditor与validate插件冲突的解决方案
2010/04/15 Javascript
jquery异步调用页面后台方法&amp;#8207;(asp.net)
2011/03/01 Javascript
设为首页加入收藏兼容360/火狐/谷歌/IE等主流浏览器的代码
2013/03/26 Javascript
Array 重排序方法和操作方法的简单实例
2014/01/24 Javascript
javascript生成随机数的方法
2014/05/16 Javascript
node.js中的fs.readdir方法使用说明
2014/12/17 Javascript
JS实现进入页面时渐变背景色的方法
2015/02/25 Javascript
Jsonp post 跨域方案
2015/07/06 Javascript
Javascript BOM学习小结(六)
2015/11/26 Javascript
超链接怎么正确调用javascript函数
2016/05/23 Javascript
浅析JSONP技术原理及实现
2016/06/08 Javascript
jQuery移动端图片上传组件
2016/06/12 Javascript
常用的js验证和数据处理总结
2016/08/02 Javascript
ES10 特性的完整指南小结
2019/03/04 Javascript
JS实现商城秒杀倒计时功能(动态设置秒杀时间)
2019/12/12 Javascript
Python中的tuple元组详细介绍
2015/02/02 Python
通过python爬虫赚钱的方法
2019/01/29 Python
css3过渡_动力节点Java学院整理
2017/07/11 HTML / CSS
英国的屈臣氏:Boots博姿
2017/12/23 全球购物
英国快时尚女装购物网站:PrettyLittleThing
2018/08/15 全球购物
空字符串(“”)和null的区别
2012/11/13 面试题
高校辅导员推荐信范文
2013/12/25 职场文书
洗发水广告词
2014/03/13 职场文书
法人代表委托书
2014/04/04 职场文书
大学生求职信
2014/06/17 职场文书
2014年双拥工作总结
2014/11/21 职场文书
幼儿园老师新年寄语2015
2014/12/08 职场文书
党建工作汇报材料
2014/12/24 职场文书
春节随笔
2015/08/15 职场文书
高中班主任心得体会
2016/01/07 职场文书
准备去美国留学,那么大学申请文书应该怎么写?
2019/08/12 职场文书
python 经纬度求两点距离、三点面积操作
2021/06/03 Python
你真的了解redis为什么要提供pipeline功能
2021/06/22 Redis
Github 使用python对copilot做些简单使用测试
2022/04/14 Python