在本站中,曾经详细介绍了R语言中向量的创建、向量的引用、向量的修改等方法(详见:R语言中向量的使用)。本文将进一步的探讨一下向量的运算。
1、向量的四则运算
向量的四则运算包括加(+)、减(-)、乘(*)和除(/),除此之外还有乘方(^)。
向量的四则运算是对向量的每一个元素做相应的运算。
下面举几个例子
> x<-c(-2,0,3)
> y<-c(3,8,4)
> r<-2*x+y-1
> r
[1] -2 7 9
> v<-x*y
> v
[1] -6 0 12
> k<-x/y
> k
[1] -0.6666667 0.0000000 0.7500000
在R中的运行情况如下图所示:
在R中允许长度不同的向量进行四则运算,在运算时R会将长度较短的向量重复使用与长度较长的向量补齐。见下面的几个例子:
> x1<-c(100,200)
> x2<-1:4
> x1+x2
[1] 101 202 103 204
在上面的例子中,向量x1有两个元素(100,200),向量x2有4个元素(1,2,3,4),则在执行x1+x2时,x1自动重复为4个元素(100,200,100,200)。
再看下面的例子:
> x3<-c(100,200)
> x4<-1:3
> x3+x4
[1] 101 202 103
Warning message:
In x3 + x4 : 长的对象长度不是短的对象长度的整倍数
由于向量x4较长,x3较短,x3需要重复之后进行运算,但是由于x4的长度不是x3的整数倍,则会给出一个警告信息:长的对象长度不是短的对象长度的整倍数。
新闻热点
疑难解答