交互 - 随机事实
两者都是具有有趣互补品质的良好稳定语言。您可以在一个包中获得更好的包,然后将它们与另一个包中的一些数据拼接起来。一个例子是在 R 中使用时间序列预测和决策树,并在 Python 中进行数据处理。
两种语言相互借鉴。即使是经验丰富的软件包开发人员也喜欢Hadley Wickham (Rstudio)借钱Beautiful Soup (python)来进行rvest网络抓取。除此之外,还Yhat借用sqldf了 makepandasql和许多其他的东西。
与其在其他语言中重新发明轮子,开发人员可以专注于创新,因为最终,客户并不关心代码是用哪种语言编写的,客户关心的是洞察力。
把它们混合起来
我提到了几种将它们混合在一起的方法-
使用 Python 包rpy2在 Python 中使用 R。[演示]
在 R 中使用 Python 使用rPython package. [演示]
Jupyter与IR Kernel. _ Python 和 R,并使 iPython 的交互性可用于其他语言。
使用烧杯笔记本。它允许您以简化的方式从一个代码块中的一种语言切换到另一个代码块中的另一种语言,以传递共享对象。
Python 与 R
Python vs R - 本节将回答:
正如我之前所说,两者都是稳定的,您可以选择任何一个或同时使用两者。但是,当谈到掌握一门课程时,我建议您牢记这 3-4 条准则-
个人喜好
根据您的个人喜好选择开始的语言,这对您来说更自然,从一开始就更容易掌握。为了让您了解会发生什么,数学家和统计学家往往更喜欢 R,而计算机科学家和软件工程师往往更喜欢 Python。
项目选择
您还可以根据您知道您将在数据研究中从事的项目进行 Python 与 R 调用。如果您正在使用为您收集和清理的数据,并且您的主要重点是分析该数据,请使用 R。如果您必须处理脏数据或混乱数据,或者从网站、文件、或其他数据源,您应该开始学习 Python 或推进您的学习。
合作
一旦您掌握了数据分析的基础知识,另一个评估哪种语言可以提高您的技能的标准是您的队友使用哪种语言。如果你们都说同一种语言,那么协作以及相互学习会变得更加容易。
人才市场
与 R 相比,需要 Python 技能的工作在过去几年中同样增加了。
注意:请查看DataCamp提供的此信息图。为了更好地了解它。
我的理由
在我的情况下,我正在同时使用它们并以交互方式使用它们并根据我的使用自定义它们。您可以在其中一个中获得一些非常有趣的东西(正如我上面提到的),而在另一个中几乎不可用,因此最好将两者一起使用。这是弥合这两者之间差距的最佳方式。
但最后,您需要牢记指导方针、您的兴趣和场景,并对此有清晰的认识。
优势与劣势
R
力量
- R 非常适合原型设计和统计分析。
- 它有大量可用于不同统计类型分析的库。检查综合R 档案。
- RStudio IDE 绝对是一大优势。它简化了大多数繁琐的任务并加快了您的工作流程。
弱点
- 语法有时可能会晦涩难懂。
- 很难集成到生产工作流程中。
- 在我看来,它更适合
consultancy-type任务。
- 库文档并不总是用户友好的。
Python
力量
- Python 非常适合编写脚本和自动化不同的数据挖掘管道。它是当今事实上的脚本语言。
- 它还可以轻松集成到生产工作流程中。此外,它还可以用于您的软件工程团队的不同部分
(back-end, cloud architecture etc.)。
- scikit-learn 库非常适合机器学习任务。
- Ipython(及其笔记本)也是一个用于探索性分析和演示的强大工具。
弱点
- 它在统计分析方面不如 R 彻底,但近年来它已经取得了长足的进步
- 在我看来,学习曲线比 R 更陡峭,因为你可以用 Python 做更多的事情。
结论
使用 R 和 Python。了解它们如何协同工作。从一个开始,然后将另一个添加到您的工作流程中。正如我想提醒自己的那样——“选择工具永远不应该是首要问题”。如有疑问,请使用可用且可以快速完成工作的那个。
希望能帮助到你!
Ref- Udacity、Quora、Letustweak、kD、DataCamp