我最初来自R,但Python似乎是最近比较常见的语言。理想情况下,我会用Python编写所有代码,因为语法更容易,而且我已经有了更多实际使用它的经验--来回切换是一种痛苦。
在ML类型方面,我所做的所有统计分析都是R类回归,时间序列,方差分析,logistic回归等等。我从来没有用Python做过这类分析。不过,我正试图为自己创建一堆代码模板,在开始之前,我想知道Python是否足够深,可以完全取代R作为我选择的语言。我最终会计划更多地使用ML,而且我知道Python可以做到这一点,最终我会想到我必须使用一种更基本的语言,比如C++。
任何人都知道Python在统计分析方面的局限性是什么,或者是将R与Python作为主要的统计分析语言的利弊联系起来的?
发布于 2020-06-29 09:25:44
Python更多的是“通用用途”,而R则非常关注统计数据。但是,大多数(如果不是全部)在R中可以做的事情也可以用Python来完成。不同之处在于,您需要在Python中使用额外的包来处理在基本R中可以做的一些事情。
下面是一些例子:
总的来说,这会带来一些额外的工作(和知识),需要在Python中流畅地工作。我个人经常觉得与R基一起工作更舒服,因为我想在( base ) R中“更接近数据”。
然而,在其他情况下,例如,当我使用增强或神经网络时,Python似乎比R有一个优势。许多算法都是用C++ (例如喀拉斯、LightGBM)开发的,并且适合于Python和(通常是后来的) R。至少当您使用Windows时,这在Python中通常更好。您可以在R中使用诸如Tensorflow/Keras、LightGBM、Catboost之类的工具,但是在R中运行额外的包有时会让人望而却步(特别是在GPU支持下)。
许多包/方法可用于R和Python,如GLMnet (代表R / 对于Python)。您还可以从"统计学习导论“的实验室(它们也是可用的代表R和对于Python )中看到,这两种语言在所能做的事情上并没有太大的差别。不同之处更像是事情是如何做的。
最后,由于Python比R更“通用”(至少在我看来是这样),所以您可以使用Python (除了统计之外)完成有趣有趣的事情,而对R则不能这样做(至少更难)。
发布于 2020-06-29 05:51:45
Python的广泛使用是一个重要的考虑因素。在申请工作时,这一点将变得特别重要。此外,Python的关键统计和ML/AI工具与R一样多,并且有更大的开源基础可供利用。Python是为程序员设计的,R是为统计学家设计的。最初我是一名R程序员,但我的大多数同事都在使用Python,所以我最终转向了Python。
以下是一些基本的区别:
Python:
R:
退房参考资料: datacamp.com/community/tutorials/r-or-python-for-data-analysis
还应该提到,我在Python中使用了R代码,使用了Rpy2。如果您正在使用笔记本,安装了必要的R库之后,只需使用%R
发布于 2020-06-30 12:10:50
我想在现有答案的基础上补充两点:
https://datascience.stackexchange.com/questions/76824
复制相似问题