我知道有人问,统计分析用R还是Python(numpyscipypandas)哪个更好?从专业的角度来说,“在统计分析领域,R绝对优于Python”。毕竟,R语言本身就是为统计而生,维护R社区的是统计专家,沉淀了数理统计领域的众多权威算法、函数和工具。同时,R的可视化功能也非常强大,很多顶级期刊论文也使用R作为分析工具。R不仅在统计上比Python强大,而且不逊色于SAS、SPSS等商业软件,而且更加灵活。所以如果你的工作涉及到重要的统计工作,建议使用R。stackoverflow上有很多关于R的专业解答,但是R在中文领域的资料很少,所以一定要好好学好英文。R的官方文档:https://cran.r-project.org/doc/manuals/r-release/R-intro.htmlR包学习:https://cran.r-project.org/web/packages/available_packages_by_name。htmlR入门书籍:《R语言实战》、《R语言编程艺术》但是R有两个缺点。第一,语法比较绕,学习路径很陡;二是应用领域集中在数理统计、可视化、机器学习等领域,可扩展性稍弱。Python完美解决了这两个问题,对初学者极其友好。互联网上有无数的Python资源。而且Python有统计分析,什么都能做,web、爬虫、GUI、自动化、AI等等,几乎无所不能。对于统计分析领域,Python目前有很多解决方案。虽然没有R那么专业,但是基本可以满足95%以上的需求。例如:Scipy-科学计算库,包含最优化、线性代数、积分、插值、拟合、特殊函数、快速傅里叶变换、信号处理与图像处理、普通微积分求解等科学和过程常用计算的函数。Numpy-数值计算库,提供强大的数组计算功能,可用于存储和处理大型矩阵,比Python自带的嵌套列表结构效率高很多,支持大量维数组和矩阵运算,还提供数组操作广泛的数学函数库。StatsModels-统计建模库,提供涵盖统计模型、统计测试和统计数据挖掘的各种功能和模块。Pandas-数据分析库,一个基于NumPy的工具,为解决数据分析任务而生。它融合了大量的库和一些标准的数据模型,提供了高效操作大型数据集所需的工具和大量可以快速方便地处理数据的函数和方法。Sympy-科学计算库,类似于matlab,使用强大的符号计算系统,完成多项式求值、求极限、方程求解、积分计算、微分方程、级数展开、矩阵运算等计算问题...如果你只是在工作中偶尔会用到统计分析,还要考虑到其他数据场景,那么我建议你使用Python,它可以覆盖你所有的需求。如果你的工作场景涉及大数据,可以考虑将Scala作为补充。以下是R、Python、Scala中数据分析领域最流行的工具包,供参考:
