R语言中的向量Vector,可以存数组。与Vector类似的还有列表(list);矩阵(matrix);数组(array);数据框(data.frame)
图引自(https://www.runoob.com/r/r-data-types.html)
向量从数据结构上看就是一个线性表,可以看成一个数组。
关于向量的常见操作有以下几种:
(1)向量赋值,其中c()是一个函数,一个可以创建向量的函数。
>vector = c(10, 40, 78, 64, 53, 62, 69, 70)
(2)取向量中的一个元素
> vector[2]
[1] 40
(3) 取向量中连续的元素
> vector[2:4]
[1] 40 78 64
(4)取向量中多个元素,但不连续
>vector[c(1,2,4)]
[1] 10 40 64
>vector[c(1,4,7:8)]
[1] 10 64 69 70
注意:在以上图中的例子里“>”是输入代码的地方,在复制的时候,“>”无需复制。而 [1] 10 64 69 70,则是代码运行后的结果。
============================================
向量常见运算方式
(1)向量运算1。两个二维向量a和b相加,一般是针对维度相同的向量进行计算的。如果将一个二维向量和三维向量强行做运算,将失去数学意义,虽然不会停止运行,但会被警告。
(2)向量运算2。当向量所有元素均为数字时,向量减去一个数字,表示所有元素均减去一个数字,开方sqrt,平方^2 均可执行。
(3)向量排序。对向量中的元素从小到大进行排序用函数sort();将向量中的元素翻转过来用 rev(); 显示当前顺序下的元素下标用order(),这里的下标是最原始的下标,无论排序还是翻转,均不改变下标。
(4)向量统计。
(5)快速创建向量的常用方式。
a. 用seq()函数可以生成有间隙的等差数列。如
>seq(1,9,2) #从1到9,步长为2
[1] 1 3 5 7 9
>seq(0, 1, length.out=3) #从0到1,生成含有3个数字的等差数列
[1] 0.0 0.5 1.0
b. 用 min:max 运算符生成连续的序列。
>seq(1:9) #从1到9,生成连续的序列
[1] 1 2 3 4 5 6 7 8 9
c. 重复出现的数字序列,用rep():
>rep(0,5) #将0重复5次
[1] 0 0 0 0 0
>rep(1:3,4) #将1:3产生的连续序列重复4次
[1] 1 2 3 1 2 3 1 2 3 1 2 3
该文的很多例子参考了网页:https://www.runoob.com/r/r-data-types.html