向量是R语言最基本的数据类型。
向量中可以包含数值、字符串或者逻辑值,但不能由多种格式混合组成。
如果向量的参数是自身,那么c(...)命令会将多个向量和为一个向量。
如果一个向量中同时包含数值和字符串,R会将数值数据转化为字符串。
x <- c(1, 2, 4, 9)
x <- c(x[1:3], 88, x[4]) #在最后一个数前面插入一个数值88,可以看到用x[4]可以取出第4个元素,用x[1:3]可以取出前3个元素,如果
用x[-4]可以取出出第四个元素以外的其他任何元素。
typeof(x) #查看向量里的元素的类型(细类),注意默认是double。[1] "double"
mode(x) #r语言中变量类型称为模式(mode)。[1] "numeric"
class(x) #查看变量的类。[1]"numeric"
R不需要提前申明变量,大小写敏感,数组是从1开始。
冒号运算符
1:4 #R是一种函数式语言,冒号也是一种运算符(实际上这是一种中置运算符的表示法),可以产生序列。[1] 1 2 3 4
":"(1, 4) #与1:4是等价的,用引号引起来,就是一种函数名了,不过这种写法看上去比1:4怪异多了
5:1 #结果:[1] 5 4 3 2 1
1:10 - 1 #冒号的优先级比加减运算要高,实际上就是(1:10) - 1,结果: [1] 0 1 2 3 4 5 6 7 8 9
1:(10-1) #结果:[1] 1 2 3 4 5 6 7 8 9
循环补齐recycle
y <- c(1,2,3) + 4 # 单个的数值4会被补齐为c(4,4,4),最后结果为c(5,6,7)
c(1,2,3) * c(4,5,6) # 结果:[1] 4 10 18,这里表示的两个向量中的元素分别相乘,如果想求向量的点积(dot prod),就需要用这个%*%函数了