Python和R到底该学哪个呢_ r和python哪个更好学
大家都在问做数据分析的,python和R学哪个,更有效率,更有前途,python和r语言那个更好学些,我是文科背景,今后性从事数据分析、数据挖掘工作,希望大家给些建议。
简单回答题主的问题,如果编程零基础,建议以python入门,但是并不建议以此作为数据分析的全部。R可以说是必须要学的,除此两者以外的,可以泛泛的关注。
=================================分割线=================================
下面详细说一下自己的看法,仅仅是个人体会,仅供题主参考。
首先要说的是R,绝对是目前国外学术界的主流,统计系基本除R以外没有其他了,计量作为和统计相关的方向,R也在逐渐渗透。所以推荐题主学习。
顺便说一句,R的学习曲线是比较陡峭的,所以我不太建议零基础的人从R开始,否则挫折感会比较强烈。而python会略好,所以我建议从python开始。
python并非是专用于统计或者计量的软件,而是一种非常流行的通用编程语言。经过多年发展,库也非常齐备。我试用过numpy,scipy和pandas等库,与其他通用编程语言相比,算是相当好用,不过个人感觉还是比不上R,比如画图,ggplot2真心是神一般的存在,python的库还是略逊一筹。
但是,如楼上各位所说,除了数据处理之外,python可以干的事情太多了,也太牛了。我们主要要用到的,比如网页采集数据,需要正则表达式,解析网页等等。这些方面python就比R有优势多了。
当然,从趋势来看,未来似乎python比R更优。R是一群统计学家在编程序,python是一群计算机专家在争取搞数据处理。似乎python的基础更扎实。个人观点,仅供参考。
stata我认为是除了R以外最好的计量软件了,我两者均用过数年数个项目,但是依然感觉R更好用,整理和处理数据更方便。所以即使在楼上诸位所提到的微观计量领域,我依然更喜欢R。
除此以外spss,或者eviews等,感觉管理类学生用的更多,功能比较受限,不太推荐。这里不赘述。
上述的几个软件,还有个问题,在于都是收费的,考虑到未来知识产权的保护,还是用免费的略靠谱。
R的主要缺点有两个:
1,面对大数据乏力。这方面sas确实有优势,但是不得不说,sas的语法太反人类了,完全接受不能。面对这个问题,我要说的是,你得看问题有多大。以我的经验,经济里面的数据量似乎还不足以超过R的处理上限很多。可能金融的高频数据会比较大,我个人没啥经验,如果遇到再补充。我尝试过10g的数据,最简单的办法,不是学sas,而是买16g的内存。:)以现在的内存价格,我觉得32g以下的问题不大。
2,性能不足。这方面python也有同样的问题,最好的解决方案是混合c/c++,不过这个就是无底洞了,耗时极多,都不见得能学好。建议的方法,还是买硬件,这个最简单。:)当然用并行包等,也是解决方法之一,我尝试过几次用机房的多台机器做集群,不是太成功。求高人指点。
上面诸位还提到过几个软件,我也略微说一下自己知道的一些软件的看法:
matlab:好东西,关键还是性能问题,同样可以靠c/c++来解决。但是我不喜欢比较大的软件,为了求个均值方差,等它启动就占了5分钟。。。
julia:好东西X2,目前关注中,可能还比较年轻,导致配套的库略少,不过看好未来发展,主要是吸取了matlab,python和c/c++的有点,写的快,运算的也快,未来看涨,紧密关注。
最后提一下函数式编程,是个好东西,但是不看好纯粹函数式编程的未来。它体现了一种颇先进的编程思想,但是在实际工作中,往往性能方面的问题较大。要解决这个问题,还是的混合函数式编程和其他方式,但这就是python,R等软件已经实现的方式,似乎又没有必要专门去学其他的函数式编程了。
******************************************************************************************
同意大部分观点
1、python为通用的编程软件,且Linux系统一般带的已经有python。R偏重于统计计量。
2、函数式编程并不是什么新的东西,lisp存在很长时间了。且函数式编程 为 多种编程模式(面向过程、面向对象、
函数式编程)的一种在cpu多核心的情况下,采用函数式编程可以充分利用cpu进行多线程计算,而且能够避免死锁的问题。具体可以参考相关文献。
3、Julia个人十分看好其未来的发展,计算速度确实非常快,而且可以直接调用 c/c++程序,但毕竟是新生事物,其package相对于 python 和r 相比,还比较有限,但未来发展比较看好。
4、其实语言发展到现在,很少说只有一种语言能办到而且他语言办不到的事情,毕竟开发的成本及开发者本人可能是约束之一。合适自己的具体情况的语言就是最合适的。
转载请注明:数据分析 » Python和R学哪个好_ r和python哪个更好学