R語言基礎——向量
向量,vector,是R中最重要的一個概念,它是構成其他數據結構的基礎。R中的向量概念與數學中向量是不同的,類似於數學上的集合的概念,由一個或多個元素所構成。
向量其實是用於存儲數值型、字符型或邏輯型數據的一維數組。
用函數c來創建向量。c代表concatenate連接,也可以理解爲收集collect,或者合併combine。
數值型向量
字符型向量
注意:一定要加引號
邏輯性向量
可以不加引號,也可以簡寫成 T 和 F
利用冒號構成等差數列
調整等差差值,使用seq函數生成序列
增加參數by來設置等差值
參數length.out用來控制元素的個數
生成重複序列,可以使用rep函數
重複6個6
將向量x重複5次
使用each參數
當each和times一起使用時,每個元素重複的次數就是它們的重集
運用向量來規定每個數重複的次數
向量的特點
所有元素都是同一類型,不能混合
如圖:數值型都轉換成了字符型
可以使用mode函數來查看向量的類型
同一類型才能夠進行計算,如果不是同一類型,就會很難處理
如果向量中只有一個元素,也可以不加c函數,直接賦值
這種向量也稱爲標量
取出大於某個數的值
向量索引
1、正(負)整數索引
2、邏輯向量索引
3、名稱索引
正(負)整數索引
正整數索引,根據元素在集合中的位置來訪問
負整數索引,表示訪問除了這個元素的其他所有元素
使用向量來訪問元素
索引向量中可以沒有順序,也可以多次訪問同一個元素
向量中既有正數又有負數是不行的
邏輯向量索引
可以使用邏輯向量來作爲向量的索引,邏輯值爲TRUE則輸出,邏輯值爲FALSE則不輸出
如果邏輯值的個數超過了元素個數,會出現缺失值
不僅可以在索引中輸邏輯值,還可以更方便地直接給出邏輯判斷表達式
若是字符串向量可以使用 %in% 表示元素是否在向量中
可以把這個邏輯條件添加到索引中
名稱索引
可以使用元素名稱進行訪問
使用names函數爲向量添加名稱
在向量中添加值
也可以直接添加多個元素
在中間插入元素
刪除向量或向量中的值
刪除整個向量
刪除向量中的某一個元素
可以採用負整數索引的方式
修改向量中某個元素的值
直接利用索引找到這個元素,然後把新的值賦給它
向量運算
乘冪運算
求餘運算
等除運算
元素個數不等的向量運算
若x中元素的個數不是z中元素的個數,則會報錯
向量也可以進行邏輯運算
包含運算符 %in% :判斷左邊的元素是否在右邊的元素中
比較兩個向量是否相等應該使用“==”
abs函數返回向量的絕對值
sqrt函數計算平方根
log函數用來求對數,第一個參數爲要求的值,第二個參數爲底數
不加base參數,默認是自然對數
常見的以10爲底的對數
exp函數計算指數
ceiling函數返回不小於x的最小整數
floor函數返回不大於x的最大整數
trunc函數返回整數部分
round函數用來四捨五入,digits參數可以規定保留的小數位數
signif與round函數類似,只不過保留小數部分有效數字
sin函數
cos函數
range函數返回最小值和最大值
mean函數返回向量的均值
var函數返回向量的方差
sd函數返回向量的標準差
prod函數返回向量的連乘的集
median函數計算中位數
quantile函數計算向量的分位數
使用which系列的函數返回索引值