1 c() c表示”連接“(concatenate)。 在R中向量是連續存儲的,因此不能插入或刪除元素。 2 seq() seq()的特殊用法,可以用在for迴圈里for(i in seq()) 3 cumsum() 函數cumsum()它能計算向量的累計和(cumulative sums) 4 c ...
1--c()
c表示”連接“(concatenate)。
在R中向量是連續存儲的,因此不能插入或刪除元素。
2--seq()
seq()的特殊用法,可以用在for迴圈里for(i in seq())
> x <- c(2,3,4,5,7,3)
> seq(x)
[1] 1 2 3 4 5 6
> seq(6)
[1] 1 2 3 4 5 6
3--cumsum()
函數cumsum()它能計算向量的累計和(cumulative sums)
> a <- c(4,2,-3,8)
> cumsum(a)
[1] 4 6 3 11
4--cumprod()
相似的,cumprod()能計算向量的累積積(cumulative product)
> a <- c(4,2,-3,8)
> cumprod(a)
[1] 4 8 -24 -192
5--NA與NULL
NA是未知的,對其進行mean等計算依然是未知的。
> b <- c(1,NA, NULL)
> mean(b)
[1] NA
> mode(b)
[1] "numeric"
> mode(b[2])
[1] "numeric"
> mode(b[3])
[1] "numeric"
NA與NULL的長度
> length(NA)
[1] 1
> length(NULL)
[1] 0
6--subset()
可以用subset來剔除NA值,這個函數不用自己設定na.rm = TRUE
> a <- c(1,2,NA)
> subset(a, a > 1)
[1] 2
7--diff()與setdiff()
diff函數對向量做滯後運算
set(a, b)得到a中有b中沒有的元素
> a <- c(4,3,6,8)
> diff(a)
[1] -1 3 2
> b <- c(4,5,6,7)
> setdiff(a,b)
[1] 3 8
8--sign()
sign()根據其參數向量中的數值是正值、零、負值將其分別轉化為1,0,-1。
> a <- c(3,-4,5,0)
> sign(a)
[1] 1 -1 1 0
9--TRUE 與FALSE
邏輯值TRUE和FALSE可以縮寫為T和F(兩者必須都是大寫),在算術表達式中他們會轉化為0和1。
> mean(c(TRUE,FALSE))
[1] 0.5
> mean(TRUE,FALSE)#則不對
Error in mean.default(TRUE, FALSE) : 'trim'必需是長度必需為一的數值
> T+F
[1] 1
10--identical()
identical函數判斷的是兩個對象是否完全一樣。
> a <- 1:2
> b <- c(1,2)
> identical(a, b)
[1] FALSE