R对标和代替的是SAS、SPSS、Stata、Eviews等工具,专注于统计、绘图、算法、建模。如果你是经济统计专业的学生,使用R更方便。
举个例子,要对csv文件中的y、x进行线性回归,画出散点图。
使用R:df <- read.csv('C:/Users/swufe/Desktop/df.csv')
summary(lm(y ~ x, data = df))
plot(x, y)
使用Python:import pandas as pd
import statsmodels.formula.api as smf
import matplotlib.pyplot as plt
df = pd.read_csv('C:/Users/swufe/Desktop/df.csv')
smf.ols('y ~ x', data = df).fit().summary()
df.plot.scatter('x', 'y')
plt.show()
显然要完成这个工作,R更直观、简便,对于Python,暂时想不出更简洁的办法。
作为R的重度用户,我希望所有工作都能用R来完成,但有时不得不求助于Python。
在批量处理Excel文件时,R有openxlsx包,这是我找到的功能最丰富的包了,但有时候用它生成的xlsx文档,Excel不能正确打开,也缺少了一些特性,这时候不得不用Python下的openpyxl和xlwings。
深度学习领域更是Python的天下,除了mxnet框架,Tensorflow、Keras、PyTorch等都是从Python移植到R平台的,R中的rTorch包只是提供了调用PyTorch的api,底层还是运行Python + PyTorch。即便是mxnet原生支持R,也是安装复杂、文档不完善,不如Python平台好用。
你的观点和想法是最重要的,R和Python都只是实现它们的工具,作为工具而言,各有长处,哪个好用就用哪个。