在本站中,曾經詳細介紹了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的整數倍,則會給出一個警告信息:長的對象長度不是短的對象長度的整倍數。
新聞熱點
疑難解答