(—)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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章