運算子r語言的變數可以儲存原子向量、原子向量組或許多r物件的組合。
命名規範:
賦值:可以用 向左<-
、向右->
、等於號=
來為變數分配值。
列印變數值:用print()
或者cat()
,不同的是,前乙個只能列印乙個變數,後乙個能列印多個變數,如:(注意兩者輸出的格式也不一樣)
a <- c(1,
2,3)
b <- c(4,
5,6)
print(a)
#輸出:[1
]123
cat(a,b)
#輸出:12
3456
在 r語言裡,變數沒有像c語言那樣定義時就要宣告號資料型別,而是根據分配到的r-物件來判斷其資料型別,類似python,因此,r語言是動態型別的語言。
要知道當前工作空間中已經定義了哪些變數,用ls()
函式檢視,例如:
a <- c(1,
2,3)
b <- c(4,
5,6)
ab <- a + b
print(ls())
#輸出:[1
]"a"
"b""ab"
可以使用模式pattern
來匹配含有指定字元的變數:
print(ls(pattern =
'a')
)#注意,函式內的引數不能用 '<-' 和 '->'來賦值[1
]"a"
"ab"
使用rm()
函式對當前工作空間內的變數進行刪除
a <- c(1,
2,3)
b <- c(4,
5,6)
ab <- a + b
rm(ab)
print(ls())
#輸出:[1
]"a"
"b"#變數ab被刪除了
print(ab)
#這時試圖列印ab的值出錯:
#輸出:
error in print(ab)
: 找不到物件'ab'
traceback:
1. print(ab)
刪除多個變數:rm(變數1,變數2,...)
a <- c(1,
2,3)
b <- c(4,
5,6)
ab <- c(7,
8,9)
rm(a,b)
print(ls())
#輸出[1]
"ab"
刪除所有的變數可以用語句rm(list= ls())
rm(list = ls())
print(ls())
#輸出:
character(
0)
運算子
描述舉例
+
兩個向量相加
print(c(1,2) + c(3,4))
結果:[1] 4 6
-
兩個向量相減
print(c(1,2) - c(3,4))
結果:[1] -2 -2
*
兩個向量相乘
print(c(1,2) * c(3,4))
結果:[1] 3 8
/
兩個向量相除
print(c(3,2) / c(3,4))
結果:[1] 1.0 0.5
%%
兩個向量求餘
print(c(5,8) %% c(3,4))
結果:[1] 2 0
%/%
兩個向量求商
print(c(5,8) %/% c(3,4))
結果:[1] 1 2
^
乘方運算
print(c(2,2) ^ c(3,4))
結果:[1] 8 16
r語言關係運算子有以下6種:
>
,<
,=
,>=
,<=
,==
,!=
,含義與其他很多語言都一樣
兩個向量比較時將會對每個元素進行比較,例如:
a <- c(1,
5,9)
b <- c(2,
4,9)
print(a>b)
#輸出:[1] false true false
print(a==b)
#輸出:[1] false false true
print(a!=b)
#輸出:[1] true true false
前3個運算子對兩個向量的元素逐一進行邏輯運算,後2個只是對兩個向量的第乙個元素進行運算:
a <- c(0,
1,0,
false
)b <- c(1,
2,true
,false
)print(a&b)
#輸出 [1] false true false false
print(a|b)
#輸出 [1] true true true false
print(
!a)#輸出 [1] true false true true
print(a&&b)
#輸出 [1] false
print(a||b)
#輸出 [1] true
左分配符:<-
,<<-
,=
右分配符:->
,->>
例如:
v1 <- c(1,
2,3+
1i)v2 <<- c(1,
2,3+
1i)v3 = c(1,
2,3+
1i)c(1
,2,3
+1i)-> v4c(1
,2,3
+1i)->> v5
print(v1)
print(v2)
print(v3)
print(v4)
print(v5)
它們的輸出結果相同,均為:[1] 1+0i 2+0i 3+1i
t <-3:
8print(t)
#輸出 [1] 3 4 5 6 7 8
a <-
4b <-
10c <-2:
6print(a %in% c)
#輸出 [1] true
print(b %in% c)
#輸出 [1] false
m = matrix(c(1,
2,3,
4,5,
6,7,
8),nrow =
2, ncol =
4, byrow =
true
)print(m)
#輸出:[,
1][,
2][,
3][,
4][1
,]12
34[2
,]56
78
print(t(m)
)#將矩陣轉置
#輸出:[,
1][,
2][1
,]15
[2,]
26[3
,]37
[4,]
48
相乘:(注意這可不是對應位置相乘,形狀都不一樣)
print(m %*% t(m)
)#輸出:[,
1][,
2][1
,]3070[2
,]70174
R語言運算子
運算子是乙個符號,它告訴編譯器執行特定的數學或邏輯操作。r語言豐富的內建運算子,並提供以下型別的運算子。在r程式設計中有以下型別的運算子 下表顯示了r語言支援的算術運算子。運算子對向量的每個元素進行操作。下表顯示了r語言支援的關係運算子。將第乙個向量的每個元素與第二向量中的相應元素進行比較。比較結果...
R語言運算子
運算子是乙個符號,告訴編譯器執行特定的數學或邏輯操作。r語言有豐富的內建運算子,並提供以下型別的運算子。下表列出了用r語言支援的算術運算子。運算子作用向量中的每個元素。運算子描述示例 兩個向量相加 v c 2,5.5,6 t c 8,3,4 print v t 它產生以下結果 1 10.0 8.5 ...
變數與運算子
注釋 1.注釋 用於一行 2.注釋 三個單引號中間的均為注釋,可跨行 3.注釋 三個雙引號中間的均為注釋,可跨行 input 從外部獲取變數的值 eg age input 請輸入使用者年齡 print age age 等待輸入 處於阻塞狀態 輸入的內容儲存在age裡 python資料型別 1.num...