事实上,不知道R现阶段的定位和发展方向是什么?是提供面向统计领域的全面应用,还是向数值计算的方向发展。虽然,看起来R core把更多的精力用在了基础构建上,但是却很难看出来他们打算向哪个方向发展?从使用上的易用性到开源特征看,他比较适合于教育机构,比如大学等,因为其购买成本接近于零,并可以根据具体的教学安排与目的构建不同的数学统计模型,且语法上比较容易被非计算机专业的学生理解。即——进入门槛很低。
但是,当应用领域稍稍扩展到专业领域后,会出现一些问题:
1.算法的严谨性和计算过程的完整性。比如,大部分附加包——即base packages外的扩展包,都有一个包的样子和格式化的形式,比如说明文档等。而具体的包的质量,是一个大大的?。如果仅仅是应用在不考虑风险成本的用途上,比如做个非核心数据的常规数据分析,R的使用风险基本是不用考虑的。但你要是有一个多指标决策模型,那我认为还是必须要审查构成每个核心指标的应用函数和计算过程,速度问题是可以被实时观察到的,算法要是有瑕疵,你就很难发现了,如果没有数据错误屏蔽机制进行先验,那就只能适用错误爆发的后觉了。所以建议官网应该在扩展包下载界面上增加一个Bug列表。这样至少降低了使用者的选择风险。
2.统计模块化还是数值计算易用化。如果把R与相关的统计软件简单比较,首先说在功能完整性上,由于大量扩展包的存在,R是不差的。如果R core打算在S 语言的基础上构建一个统计软件的大厦,那么模块化可能是一个必然的选择。虽然大部分统计人员面向不同的统计应用领域,但实际上所使用的统计工具(数学意义上的)都很近似,也就是说一般统计分析工具的需求很大;在这之外,就是一些自定义的特殊统计需求了,而R在这方面是没有太大问题的。如何把一般统计分析工具构建的扎实(至少要达到R base packages的质量),我认为这是R core所应该考虑到一个问题。即——对base packages进行相应的完整和调整。R会面向数值计算发展吗?我认为可能性不大,理由来自于这方面的需求很小(至少是现在)。很小指的是计算设备的成本构成的应用领域被局限于能够承担自行开发硬件及软件的部门。而一般的商业部门或研究部门会选择使用专业设备及捆绑的商业软件,因为他有法律保障。再次一点的往往就会选择R这种类型的软件进行数值计算了,因为人工成本和计算成本都很低。如果需求部门是特定的,那他的计算领域和需求也必然是特定的,那么他会自行开发算法和计算过程。因此,我认为R更多的在数值计算易用化方面仅有一点发展的空间。
最后,就是一个特别的想法,希望R能够在高中阶段就被普及(我国的)。如果看到托马斯微积分完全是用计算机绘图的方式进行讲解的,那么我想大家就会认同我的想法了。
计算机是用来计算的,应该让每一个使用计算机的人理解这个含义,并且能够让他们自如的把其算计方法表达给计算机。[s:17]