運(yùn)算符是一個(gè)符號(hào),通知編譯器執(zhí)行特定的數(shù)學(xué)或邏輯操作。 R語(yǔ)言具有豐富的內(nèi)置運(yùn)算符,并提供以下類型的運(yùn)算符。
R語(yǔ)言中擁有如下幾種運(yùn)算符類型:
下表顯示了R語(yǔ)言支持的算術(shù)運(yùn)算符。 操作符對(duì)向量的每個(gè)元素起作用。
運(yùn)算符 | 描述 | 例 |
---|---|---|
+ | 兩個(gè)向量相加 | v <- c( 2,5.5,6) t <- c(8, 3, 4) print(v+t) 它產(chǎn)生以下結(jié)果 - 10.0 8.5 10.0 |
- | 兩個(gè)向量相減 | v <- c( 2,5.5,6) t <- c(8, 3, 4) print(v-t) 它產(chǎn)生以下結(jié)果 - -6.0 2.5 2.0 |
* | 兩個(gè)向量相乘 | v <- c( 2,5.5,6) t <- c(8, 3, 4) print(v*t) 它產(chǎn)生以下結(jié)果 - 16.0 16.5 24.0 |
/ | 將第一個(gè)向量與第二個(gè)向量相除 | v <- c( 2,5.5,6) t <- c(8, 3, 4) print(v/t) 當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 - 0.250000 1.833333 1.500000 |
%% | 兩個(gè)向量求余 | v <- c( 2,5.5,6) t <- c(8, 3, 4) print(v%%t) 它產(chǎn)生以下結(jié)果 - [1] 2.0 2.5 2.0 |
%/% | 兩個(gè)向量相除求商 | v <- c( 2,5.5,6) t <- c(8, 3, 4) print(v%/%t) 它產(chǎn)生以下結(jié)果 - [1] 0 1 1 |
^ | 將第二向量作為第一向量的指數(shù) | v <- c( 2,5.5,6) t <- c(8, 3, 4) print(v^t) 它產(chǎn)生以下結(jié)果 - [1] 256.000 166.375 1296.000 |
下表顯示了R語(yǔ)言支持的關(guān)系運(yùn)算符。 將第一向量的每個(gè)元素與第二向量的相應(yīng)元素進(jìn)行比較。 比較的結(jié)果是布爾值。
運(yùn)算符 | 描述 | 例 |
---|---|---|
> | 檢查第一向量的每個(gè)元素是否大于第二向量的相應(yīng)元素。 | v <- c(2,5.5,6,9) t <- c(8,2.5,14,9) print(v>t) 它產(chǎn)生以下結(jié)果 - FALSE TRUE FALSE FALSE |
< | 檢查第一個(gè)向量的每個(gè)元素是否小于第二個(gè)向量的相應(yīng)元素。 | v <- c(2,5.5,6,9) t <- c(8,2.5,14,9) print(v < t) 它產(chǎn)生以下結(jié)果 - TRUE FALSE TRUE FALSE |
== | 檢查第一個(gè)向量的每個(gè)元素是否等于第二個(gè)向量的相應(yīng)元素。 | v <- c(2,5.5,6,9) t <- c(8,2.5,14,9) print(v == t) 它產(chǎn)生以下結(jié)果 - FALSE FALSE FALSE TRUE |
<= | 檢查第一向量的每個(gè)元素是否小于或等于第二向量的相應(yīng)元素。 | v <- c(2,5.5,6,9) t <- c(8,2.5,14,9) print(v<=t) 它產(chǎn)生以下結(jié)果 - TRUE FALSE TRUE TRUE |
> = | 檢查第一向量的每個(gè)元素是否大于或等于第二向量的相應(yīng)元素。 | v <- c(2,5.5,6,9) t <- c(8,2.5,14,9) print(v>=t) 它產(chǎn)生以下結(jié)果 - FALSE TRUE FALSE TRUE |
!= | 檢查第一個(gè)向量的每個(gè)元素是否不等于第二個(gè)向量的相應(yīng)元素。 | v <- c(2,5.5,6,9) t <- c(8,2.5,14,9) print(v!=t) 它產(chǎn)生以下結(jié)果 - TRUE TRUE TRUE FALSE |
運(yùn)算符 | 描述 | 例 |
---|---|---|
& | 它被稱為元素邏輯AND運(yùn)算符。 它將第一向量的每個(gè)元素與第二向量的相應(yīng)元素組合,并且如果兩個(gè)元素都為TRUE,則給出輸出TRUE。 | v <- c(3,1,TRUE,2+3i) t <- c(4,1,FALSE,2+3i) print(v&t) 它產(chǎn)生以下結(jié)果 - TRUE TRUE FALSE TRUE |
| | 它被稱為元素邏輯或運(yùn)算符。 它將第一向量的每個(gè)元素與第二向量的相應(yīng)元素組合,并且如果元素為真,則給出輸出TRUE。 | v <- c(3,0,TRUE,2+2i) t <- c(4,0,FALSE,2+3i) print(v|t) 它產(chǎn)生以下結(jié)果 - TRUE FALSE TRUE TRUE |
! | 它被稱為邏輯非運(yùn)算符。 取得向量的每個(gè)元素,并給出相反的邏輯值。 | v <- c(3,0,TRUE,2+2i) print(!v) 它產(chǎn)生以下結(jié)果 - FALSE TRUE FALSE FALSE |
邏輯運(yùn)算符&&和|| 只考慮向量的第一個(gè)元素,給出單個(gè)元素的向量作為輸出。
運(yùn)算符 | 描述 | 例 |
---|---|---|
&& | 稱為邏輯AND運(yùn)算符。 取兩個(gè)向量的第一個(gè)元素,并且只有兩個(gè)都為TRUE時(shí)才給出TRUE。 | v <- c(3,0,TRUE,2+2i) t <- c(1,3,TRUE,2+3i) print(v&&t) 它產(chǎn)生以下結(jié)果 - TRUE |
|| | 稱為邏輯OR運(yùn)算符。 取兩個(gè)向量的第一個(gè)元素,如果其中一個(gè)為TRUE,則給出TRUE。 | v <- c(0,0,TRUE,2+2i) t <- c(0,3,TRUE,2+3i) print(v||t) 它產(chǎn)生以下結(jié)果 - FALSE |
這些運(yùn)算符用于向向量賦值。
運(yùn)算符 | 描述 | 例 |
---|---|---|
<? or = or <<?
| 稱為左分配 | v1 <- c(3,1,TRUE,2+3i) v2 <<- c(3,1,TRUE,2+3i) v3 = c(3,1,TRUE,2+3i) print(v1) print(v2) print(v3) 它產(chǎn)生以下結(jié)果 - 3+0i 1+0i 1+0i 2+3i 3+0i 1+0i 1+0i 2+3i 3+0i 1+0i 1+0i 2+3i |
-> or ->>
| 稱為右分配 | c(3,1,TRUE,2+3i) -> v1 c(3,1,TRUE,2+3i) ->> v2 print(v1) print(v2) 它產(chǎn)生以下結(jié)果 - 3+0i 1+0i 1+0i 2+3i 3+0i 1+0i 1+0i 2+3i |
這些運(yùn)算符用于特定目的,而不是一般的數(shù)學(xué)或邏輯計(jì)算。
運(yùn)算符 | 描述 | 例 |
---|---|---|
: | 冒號(hào)運(yùn)算符。 它為向量按順序創(chuàng)建一系列數(shù)字。 | v <- 2:8 print(v) 它產(chǎn)生以下結(jié)果 - 2 3 4 5 6 7 8 |
%in% | 此運(yùn)算符用于標(biāo)識(shí)元素是否屬于向量。 | v1 <- 8 v2 <- 12 t <- 1:10 print(v1 %in% t) print(v2 %in% t) 它產(chǎn)生以下結(jié)果 - TRUE FALSE |
%*% | 此運(yùn)算符用于將矩陣與其轉(zhuǎn)置相乘。 | M = matrix( c(2,6,5,1,10,4), nrow = 2,ncol = 3,byrow = TRUE) t = M %*% t(M) print(t) 它產(chǎn)生以下結(jié)果 - [,1] [,2] [1,] 65 82 [2,] 82 117 |
更多建議: