R语言是用于统计分析、绘图的语言和操作环境。R语言是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。
R语言是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。可以认为R语言是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的解释型语言。
r语言的特点:
1、R是自由软件。这意味着它是完全免费,开放源代码的。可以在它的网站及其镜像中下载任何有关的安装程序、源代码、程序包及其源代码、文档资料。标准的安装文件自身就带有许多模块和内嵌统计函数,安装好后可以直接实现许多常用的统计功能。
2、R是一种可编程的语言。作为一个开放的统计编程环境,语法通俗易懂,很容易学会和掌握语言的语法。而且学会之后,我们可以编制自己的函数来扩展现有的语言。这也就是为什么它的更新速度比一般统计软件,如SPSS、SAS等快得多。大多数最新的统计方法和技术都可以在R中直接得到。
首先,Matlab为收费软件价格不低,安装文件比较大。但是随着发展,以及R语言等免费软件的兴起,Matlab价格出现多个版本商业、教育、学生、个人版。学生版功能与商业版一致,但价格非常优惠了不到100美元。R语言为开源免费软件,安装文件比较小,而且有着很多牛人为其提供工具包,发展迅速。在图像展现方面似乎以及高于Matlab。但是在稳定性方面我还没有发言权。
其次,Matlab以工程为主,军工、汽车、电信、金融等行业用于大量的用户群体,尤其在理工学校Matlab或许是必修之一,在金融工程的出现,就是将工程的方法用于金融,当然同时也将Matlab引入金融。
R 以统计为主,期初主要是统计相关专业的人使用,但后来逐渐广泛用于医学等领域,随着大数据的崛起,IT人员或许更多选择R语言,主要R语言更符合GNU标准,而且是开源软件并且免费。
所以,Matlab适合矩阵计算,数学运算方面专用,尤其是信号处理。而 R语言适合统计分析和绘图。也就是说,R语言做统计分析更给力,本人就是这样例子。
>x<-matrix(c(1,1,2,1,2,3,4,1),4,2)>x
[,1] [,2]
[1,]12
[2,]13
[3,]24
[4,]11
>length(which((x[,1]==1)))
[1] 3
>length(which((x[,2]==1)))
[1] 1
#x[,1]==1判断是否为1,返回True或False
# which((x[,1]==1))返回为True的行号
#length(which((x[,1]==1)))返回为True的行数,即1的个数