概述
什么是R语言?
R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。
- R语言的发展历史:
R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。可以认为R是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的解释型语言。最初S语言的实现版本主要是S-PLUS。S-PLUS是一个商业软件,它基于S语言,并由MathSoft公司的统计科学部进一步完善。后来新西兰奥克兰大学的Robert Gentleman和Ross Ihaka及其他志愿人员开发了一个R系统。由“R开发核心团队”负责开发。R可以看作贝尔实验室(AT&T BellLaboratories)的RickBecker,JohnChambers和AllanWilks开发的S语言的一种实现。当然,S语言也是S-Plus的基础。所以,两者在程序语法上可以说是几乎一样的,可能只是在函数方面有细微差别,程序十分容易地就能移植到一程序中,而很多一的程序只要稍加修改也能运用于R。 - R语言的特点:
R作为一种统计分析软件,是集统计分析与图形显示于一体的。它可以运行于UNIX,Windows和Macintosh的操作系统上,而且嵌入了一个非常方便实用的帮助系统,相比于其他统计分析软件,R还有以下特点:
1.R是自由软件。这意味着它是完全免费,开放源代码的。可以在它的网站及其镜像中下载任何有关的安装程序、源代码、程序包及其源代码、文档资料。标准的安装文件身自身就带有许多模块和内嵌统计函数,安装好后可以直接实现许多常用的统计功能。
2.R是一种可编程的语言。作为一个开放的统计编程环境,语法通俗易懂,很容易学会和掌握语言的语法。而且学会之后,我们可以编制自己的函数来扩展现有的语言。这也就是为什么它的更新速度比一般统计软件,如,SPSS,SAS等快得多。大多数最新的统计方法和技术都可以在R中直接得到。 - 所有R的函数和数据集是保存在程序包里面的。只有当一个包被载入时,它的内容才可以被访问。一些常用、基本的程序包已经被收入了标准安装文件中,随着新的统计分析方法的出现,标准安装文件中所包含的程序包也随着版本的更新而不断变化。在另外版安装文件中,已经包含的程序包有:base一R的基础模块、mle一极大似然估计模块、ts一时间序列分析模块、mva一多元统计分析模块、survival一生存分析模块等等.
4.R具有很强的互动性。除了图形输出是在另外的窗口处,它的输入输出窗口都是在同一个窗口进行的,输入语法中如果出现错误会马上在窗口口中得到提示,对以前输入过的命令有记忆功能,可以随时再现、编辑修改以满足用户的需要。输出的图形可以直接保存为JPG,BMP,PNG等图片格式,还可以直接保存为PDF文件。另外,和其他编程语言和数据库之间有很好的接口。
R是基于S语言的一个GNU项目,所以也可以当作S语言的一种实现,通常用S语言编写的代码都可以不作修改的在R环境下运行。 R的语法是来自Scheme。R的使用与S-PLUS有很多类似之处,这两种语言有一定的兼容性。S-PLUS的使用手册,只要稍加修改就可作为R的使用手册。所以有人说:R,是S-PLUS的一个“克隆”。
R程序包
- 什么是程序包?
R程序包是多个函数的集合,具有详细的说明和示例。
Window下的R程序包是经过编译的zip包。
每个程序包包含R函数、数据、帮助文件、描述文件等。
- 为什么要安装程序包?
R程序包是R功能扩展,特定的分析功能,需要用相应的程序包实现。
- 安装程序包的方法
1、 用函数 install.packages(),
如果已经连接到互联网,在括号中输入要安装的程序包名称,选择镜像后,程序将自动下载并安装程序包。
例如:要安装rpart包,在控制台中输入install.packages("rpart")
2、 安装本地zip包
路径:Packages>install packages from local files
选择本地磁盘上存储zip包的文件夹。
- 程序包的使用
程序包的中函数,都要先导入,再使用,因此导入程序包是第一步。
在控制台中输入如下命令:library(rpart)
程序包内的函数的用法与R内置的基本函数用法一样。
R语言常用语法
- 使用帮助:在函数前加上“?”即可调出帮助。
例:
> ?read.csv()
帮助文档中的内容:
lm{stats} #函数名及所在包
Fitting Linear Models #标题
Description #函数描述
Usage #默认选项
Arguments #参数
Details #详情
Author(s) #作者
References #参考文献
Examples #举例
- R语言创建向量和矩阵
(1) c()
用c()来创建一个向量用c()来创建一个向量
例:
> x1 = c(1,2,3,4,5)
> x1
[1] 1 2 3 4 5
>
(2)length()
用length()来求一个向量的长度
例:
> length(x1)
[1] 5
(3)mode()
用mode()来显示数据类型
例:
> mode(x1)
[1] "numeric"
注:R语言中有四种基本类型,分别是逻辑型(Logical),整型(Integer),数值型(Numeric),复合型(Complex),字符型(Character),因子型(Factor)
(4)rbind()
用rbind()可以把x1和x2以行的形式组合成矩阵
例:
> rbind(x1,x2)
[,1] [,2] [,3] [,4] [,5]
x1 1 3 5 7 9
x2 0 2 4 6 8
利用rbind()可以用于增加一行
例:
> rbind(x1,1:5)
[,1] [,2] [,3] [,4] [,5]
x1 1 3 5 7 9
x2 1 2 3 4 5
(5)cbind()
用cbind()可以把x1与x2以列的形式组合成矩阵
例:
> cbind(x1,x2)
x1 x2
[1,] 1 0
[2,] 3 2
[3,] 5 4
[4,] 7 6
[5,] 9 8
同理,利用cbind()可以用于增加一列
> cbind(x1, 1:5)
x1 x2
[1,] 1 1
[2,] 3 2
[3,] 5 3
[4,] 7 4
[5,] 9 5
- R语言求平均值、和、连乘、最值、方差、标准差
求平均值:mean()
例:
> x = c(1:10)
> mean(x)
[1] 5.5
求和:sum()
例:
> sum(x)
[1] 55
求最小值:min()
例:
> min(x)
[1] 1
求最大值:max()
例:
> max(x)
[1] 10
求方差:var()
例:
> var(x)
[1] 9.166667
求标准差:sd(),也可以用方差开根号
例:
> sd(x)
[1] 3.02765
求值域:range()
例:
> x<-c(1,2,3,4,5)
> range(x)
[1] 1 5
- which()函数
显示最大数的下标:
> which.max(a)
显示数列中最大的数:
> a[which.max(a)]
显示最小数的下标:
> which.min(a)
显示数列中最小的数:
> a[which.min(a)]
显示数据为x的下标
> which(a==x)
显示数据大于x的下标
> which(a>x)
- 随机数据的产生
rnorm(n, mean = 0, sd = 1) #正态分布的随机数
runif(n, min = 0, max = 1) #平均分布的随机数
rep(1,5) #把1重复5次
dunif(x, min=0, max=1, log = FALSE) #概率密度
punif(q, min=0, max=1, …) #累积函数
qunif(p, min=0, max=1, …) #分位数
最后
以上就是负责帽子为你收集整理的R语言学习笔记(一)的全部内容,希望文章能够帮你解决R语言学习笔记(一)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复