R语言入门心得(3) -- 向量相关
向量定義
R在實際應用中比較常用的一個對象就是向量(Vector)。向量的創建格式為
向量名 = c(x1,x2,x3,…..)
?或 ?向量名 <- c(x1,x2,x3,…..)
?或? c(x1,x2,x3,…..) ->?向量名
?或? Assign("向量名", c(x1,x2,x3,…..)),c()為向量賦值函數,c()可以有任意多個參數,而起返回值則是一個把這些參數首尾相連形成的向量。你可以在命令行中輸入?c或者help(c)來查看函數的詳細信息。例如我們要創建一個名稱為x的含有五個數值的向量可以用如下方式:
x=c(7.1, 6.3, 5.8, 2.4, 12.7),在RStudio中顯示如下
> x=c(7.1, 6.3, 5.8, 2.4, 12.7)
回車就可以了。如果想查看x向量的具體值,則只需要在命令行中輸入x即可。如下圖所示
> x
[1]? 7.1? 6.3? 5.8? 2.4 12.7
前面的[1]表示所得向量的第一個元素。
向量運算
以剛才的向量x為例,如果我們輸入 2*x命令,則向量中的每個元素都乘以2得到一個新的向量,我們也可以將該新的向量賦值給一個新的對象。同時,向量x中的每個元素的值是不會變化的。以上操作的結果如下所示
> x
[1]? 7.1? 6.3? 5.8? 2.4 12.7
> 2 * x
[1] 14.2 12.6 11.6? 4.8 25.4
> y = 2 * x
> y
[1] 14.2 12.6 11.6? 4.8 25.4
> x
[1]? 7.1? 6.3? 5.8? 2.4 12.7
以上賦值都是較簡單的賦值,查看以下示例
> y = c(x, 0, x),則向量y的元素將是什么情況呢?
在控制臺中輸入y查看結果
> y
[1]? 7.1? 6.3? 5.8? 2.4 12.7? 0.0? 7.1? 6.3? 5.8? 2.4 12.7
說明R創建了一個含有11個元素的的向量y,其中包括兩份x拷貝和位于中間的一個0。
上例中我們的x向量的每個元素都是數值,其實向量也可以接受字符串類型的元素。例如我、們鍵入如下命令就能生成一個3個字符串元素的向量
> str = c("h", "Time", "Vector")
> str
[1] "h"????? "Time"?? "Vector"
下面就是它的輸入結果。如果我們想要對str向量進行2 * str操作則R將會報錯,提示我們str是非數值元素組成的向量。
向量除了支持基本+, - ,*, /和冪^運算外,還包括一些常用的數學函數,如log, exp, sin, cos, tan, sqrt等等;max和min可以求出向量的最大值和最小值,如果向量元素是字符串類型,則max和min函數得到的是向量元素按照字符串順序排序的最后面的值和最前面的值;mean()和var()函數分別取得向量的平均值和方差,如上例中的向量y利用以上兩個函數求平均值和方差得到的結果如下
> mean(y)
[1] 6.236364
> var(y)
[1] 15.37655
很多的函數用法可以通過查看幫助文檔獲得更多的信息。
從向量中選取子集
如果我們要訪問向量的某些元素,我們可以可以在 向量名字后面加上[]以選取向量的子集。
> v = c(1.2,2.3, 3.4, 4.5, 5.6, 6.7, 7.8, 8.9)
> v
[1] 1.2 2.3 3.4 4.5 5.6 6.7 7.8 8.9
> v[2]
[1] 2.3
> v[2:6]
[1] 2.3 3.4 4.5 5.6 6.7
> v[c(1, 2 ,1)]
[1] 1.2 2.3 1.2
以上操作依次是取得向量v的第二個元素,取得向量v的第二到第六個元素的值,取得向量v第一個、第二個、重復第一個元素的值。
轉載于:https://www.cnblogs.com/midu/p/3809058.html
總結
以上是生活随笔為你收集整理的R语言入门心得(3) -- 向量相关的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 漫扯:从polling到Websocke
- 下一篇: 高次同余方程求解