广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 计算机学校 > 惠州计算机学校 > 正文

做数据分析,是学Python还是R语言呢?_惠州计算机Python培训学校

作者:黄君发布时间:2021-05-19分类:惠州计算机学校浏览:757


导读:做数据分析是学Python还是R语言好呢?倒是没有编程经验, R 好像用于数据分析和作图不错,但是也有人说Python更好点,到底选择哪个呢?

做数据分析学Python还是R语言

Python和R语言的区别

有人说Python和R的区别是显而易见的,因为R是针对统计的,python是给程序员设计的,其实这话对Python多多少少有些不公平。

2012年的时候我们说R是学术界的主流,但是现在Python正在慢慢取代R在学术界的地位。不知道是不是因为大数据时代的到来。

Python与R相比速度要快。Python可以直接处理上G的数据;R不行,R分析数据时需要先通过数据库把大数据转化为小数据(通过groupby)才能交给R做分析,因此R不可能直接分析行为详单,只能分析统计结果。所以有人说:Python=R+SQL/Hive,并不是没有道理的。

关于 Python 的介绍

Python 是由 Guido van Rossem 创建于 1991 年,并强调效率和代码的可读性。希望深入的数据分析或应用统计技术的程序员是 Python 的主要用户。

当你越需要在工程环境中工作,你会越喜欢 Python。它是一种灵活的语言,在处理一些新东西上表现很好,并且注重可读性和简单性,它的学习曲线是比较低的。

和R类似,Python 也有包,pypi 是一个 Python 包的仓库,里面有很多别人写好的 Python 库。

Python 也是一个大社区,但它是一个有点比较分散,因为它是一个通用的语言。然而,Python 自称他们在数据科学中更占优势地位:预期的增长,更新颖的科学数据应用的起源在这里。

Python的一个最明显的优势在于其胶水语言的特性,很多书里也都会提到这一点,一些底层用C写的算法封装在Python包里后性能非常高效(Python的数据挖掘包Orange canve 中的决策树分析50万用户10秒出结果,用R几个小时也出不来,8G内存全部占满)。但是,凡事都不绝对,如果R矢量化编程做得好的话(有点小难度),会使R的速度和程序的长度都有显著性提升。

关于R的介绍

Ross Ihaka 和 Robert Gentleman 于 1995 年在S语言中创造了开源语言R,目的是专注于提供更好和更人性化的方式做数据分析、统计和图形模型的语言。

起初R主要是在学术和研究使用,但近来企业界发现R也很不错。这使得中的R成为企业中使用的全球发展最快的统计语言之一。

R的优势在于有包罗万象的统计函数可以调用,特别是在时间序列分析方面,无论是经典还是前沿的方法都有相应的包直接使用。 相比之下,Python之前在这方面贫乏不少。

但是,现在Python有了pandas。pandas提供了一组标准的时间序列处理工具和数据算法。因此,你可以高效处理非常大的时间序列,轻松地进行切片/切块、聚合、对定期/不定期的时间序列进行重采样等。可能你已经猜到了,这些工具中大部分都对金融和经济数据尤为有用,但你当然也可以用它们来分析服务器日志数据。

于是,近年来,由于Python有不断改良的库(主要是pandas),使其成为数据处理任务的一大替代方案。

Python和R比较

做过几个实验:

1. 用python实现了一个统计方法,其中用到了ctypes,multiprocess。 之后一个项目要做方法比较,又用回R,发现一些bioconductor上的包已经默认用parallel了。(但那个包还是很慢,一下子把所有线程都用掉了,导致整个电脑使用不能,看网页非常卡~)

2. 用python pandas做了一些数据整理工作,类似数据库,两三个表来回查、匹配。感觉还是很方便的。虽然这些工作R也能做,但估计会慢点,毕竟几十万行的条目了。

3. 用python matplotlib画图。pyplot作图的方式和R差异很大,R是一条命令画点东西,pylot是准备好了以后一起出来。pyplot的颜色选择有点尴尬,默认颜色比较少,之后可用html的颜色,但是名字太长了~。pyplot 的legend比R 好用多了,算是半自动化了。pyplot画出来后可以自由拉升缩放,然后再保存为图片,这点比R好用。

总的来说Python是一套比较平衡的语言,各方面都可以,无论是对其他语言的调用,和数据源的连接、读取,对系统的操作,还是正则表达和文字处理,Python都有着明显优势。 而R是在统计方面比较突出。但是数据分析其实不仅仅是统计,前期的数据收集,数据处理,数据抽样,数据聚类,以及比较复杂的数据挖掘算法,数据建模等等这些任务,只要是100M以上的数据,R都很难胜任,但是Python却基本胜任。

结合其在通用编程方面的强大实力,我们完全可以只使用Python这一种语言去构建以数据为中心的应用程序。 但世上本没有最好的软件或程序,也鲜有人能把单一语言挖掘运用到极致。

尤其是很多人早先学了R,现在完全不用又舍不得,所以对于想要学以致用的人来说,如果能把R和Python相结合,就更好不过了,很早看过一篇文章——让R与Python共舞,咱们坛子里有原帖,就不多说了,看完会有更多启发。

BTW: 如果之前没有学过R,可以先学Python然后决定是不是学R,如果学了R,学Python的时候会更快上手。

Python:优点和缺点

优点

IPython Notebook

IPython Notebook 使我们更容易使用 Python 进行数据工作,你可以轻松地与同事共享 Notebook,而无需他们安装任何东西。这大大减少了组织代码,输出和注释文件的开销。可以花更多的时间做实际的工作。

通用语言

Python 是一种通用的语言,容易和直观。在学习上会比较容易,它可以加快你写一个程序的速度。此外,Python 测试框架是一个内置的,这样可以保证你的代码是可重复使用和可靠的。

一个多用途的语言

Python 把不同背景的人集合在一起。作为一种常见的、容易理解,大部分程序员都懂的,可以很容易地和统计学家沟通,你可以使用一个简单的工具就把你每一个工作伙伴都整合起来。

缺点

可视化

可视化是选择数据分析软件的一个重要的标准。虽然 Python 有一些不错的可视化库,如 Seaborn,Bokeh 和 Pygal。但相比于R,呈现的结果并不总是那么顺眼。

如果你想学一门技术,Python无疑是你最好的选择。

Python的火爆是毋庸置疑的,但是很多同学想靠自学就转行成功拿,恐怕也不是那么容易。毕竟公司招聘最看重的还是技术能力和项目经验。


点击咨询直接了解更多相关资料,我在惠州北大青鸟新方舟等你。

 

本文内容转载自网络,版权归原作者所有,如有侵权请联系我们进行删除。


标签:惠州计算机软件培训惠州计算件软件开发惠州计算机软件基础惠州计算机Python软件开发惠州Python培训学校惠州Python培训python基础教程python是什么python教程python入门


惠州计算机学校排行
标签列表
网站分类
文章归档
最近发表