(—)R语言之向量

一、R语言最基本的数据类型是向量。

首先介绍几个新概念:

1、循环补齐:在一定的情况下自动延长向量;

2、筛选:提取向量子集;

3、向量化:对向量的每一个元素应用函数。

4、R语言中没有标量,数字实际上被当做一元向量

5、R语言中向量索引是从1开始的,而C是从0开始的。

二、循环补齐

> c(1,2,3,4)+1
[1] 2 3 4 5
其中1被当作一元向量,循环补齐的效果就是c(1,1,1,1)
> c(1,2,3,4)+c(1,2)
[1] 2 4 4 6
其中c(1,2)循环补齐的效果是c(1,2,1,2)
若是:c(1,2,3,4)+c(1,2,3)
[1] 2 4 6 5
警告信息:
In c(1, 2, 3, 4) + c(1, 2, 3) : 长的对象长度不是短的对象长度的整倍数  #说明循环补齐要是长的对象是短的对象的整数倍才行

三、向量运算和索引

R是一种函数式语言:

> 2+8
[1] 10
> "+"(2,8)
[1] 10
> x<-c(1,2,3)
> x+c(2)
[1] 3 4 5
> x*c(1,0,3)
[1] 1 0 9

依次类除法/ 取模%%都是按元素逐一进行运算,但是若是矩阵相乘,可以用%*%,而*是对应元素的相乘。

索引在R中比较重要和常用:

> a<-c(1.1,2.2,3.3,4.4,5.5)
> a[c(2:5)]
[1] 2.2 3.3 4.4 5.5
> b<-c(2:5)
> a[b]
[1] 2.2 3.3 4.4 5.5

负数的下标代表我们想把相应元素剔除

> a[-5]
[1] 1.1 2.2 3.3 4.4
 > a[-3:-5]
[1] 1.1 2.2


你可能感兴趣的:(R)