在数据科学实践中,笔者选择Python作为编程语言。
R的优势在于,它是专门为统计分析应用建立的,尽管Python里有Scipy、Pandas、statsmodels等提供了一系列统计功能,但是R拥有更多此类工具。可以说,如果主要工作是进行统计分析,R是不错的选择。
但是数据科学要用到很多机器学习的算法,相比较于R,Python拥有各种机器学习算法,还有网络爬虫库,方便从互联网上获得数据集。
笔者选择Python的主要原因,在于相对于R,Python的语法结构和其它语言更加类似,非常容易上手。在编写《数据科学概论》教材的过程中,笔者比较了R和Python,同样的算法,用R实现显得很简洁,但是可读性很差,用Python语言实现,代码量好像稍微多一点,但是其可读性很好。
笔者也阅读了用R和用Python语言编写的量化交易策略,Python语言编写的交易策略更加容易理解。Python代码的可读性,是无可匹敌的。
Python的学习更加容易,笔者用一个下午的时间,就实现了Python语言的入门。但是R语言则需要更多的时间。看到R语言中的<-以及$等符号,脑袋就生疼。
所以,笔者的选择是Python语言。当然,Python也有烦人的地方,它的缩进是强制的,不像Java/c语言那样灵活,但是这也给我们一个压迫,要写出格式良好的代码。
从下面两个参考文献,读者可以体会到用R和Python语言编写的程序的可读性, 有什么差别。
Python kmeans clustering algorithm
https://pythonprogramminglanguage.com/kmeans-clustering-algorithm/
Example of K-Means Clustering with R
https://rpubs.com/dnchari/kmeans
数据科学概论网上资源
https://blog.csdn.net/xiongpai1971/article/details/89364071