向量与数的四则运算
+加法
-减法
*乘法
/除法
%%取余
x**y x的y次方
%/%整除运算
以加法为例
> x<-1:10
#这些都没有赋值操作 所以x值不变
> x
[1] 1 2 3 4 5 6 7 8 9 10
> x+1
[1] 2 3 4 5 6 7 8 9 10 11
> x+2
[1] 3 4 5 6 7 8 9 10 11 12
> x-2
[1] -1 0 1 2 3 4 5 6 7 8
赋值操作 x值改变
> x<- x+2
> x
[1] 3 4 5 6 7 8 9 10 11 12
向量与向量的计算
> x
[1] 3 4 5 6 7 8 9 10 11 12
> y<-seq(1,100,length.out=10)
> y
[1] 1 12 23 34 45 56 67 78 89 100
> x+y
[1] 4 16 28 40 52 64 76 88 100 112
> y%%x
[1] 1 0 3 4 3 0 4 8 1 4
> x*y
[1] 3 48 115 204 315 448 603 780 979 1200
循环补齐
在向量的运算中 如果要求两个向量的长度一样 那么短的那个向量会重复使用
例子:z只有两个元素所以x+z时z会重复使用
> x
[1] 3 4 5 6 7 8 9 10 11 12
> z<-c(1,2)
> x+z
[1] 4 6 6 8 8 10 10 12 12 14
上面为z正好可以匹配完的情况
而下面是z有三个而x有10个不是整数倍不能完全匹配成功
> x
[1] 3 4 5 6 7 8 9 10 11 12
> z<-1:3
> x+z
[1] 4 6 8 7 9 11 10 12 14 13
Warning message:
In x + z : longer object length is not a multiple of shorter object length
逻辑运算
一一对应
>大于
<小于
==等于
遍历查找
%in%左边的值是否在右边的值中
> x
[1] 3 4 5 6 7 8 9 10 11 12
> x>6
[1] FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE TRUE
> c(1,4,6) %in% c(1,3,3,4,7)
[1] TRUE TRUE FALSE