一、判斷語句
R 語言提供了以下類型的判斷語句:
- if 語句
- if…else 語句
- switch 語句
if 語句
文法格式:
if(boolean_expression) {
// 布爾表達式為真将執行的語句
}
if…else 語句
文法格式:
if(boolean_expression) {
// 如果布爾表達式為真将執行的語句
} else {
// 如果布爾表達式為假将執行的語句
}
switch語句
一個 switch 語句允許測試一個變量等于多個值時的情況。每個值稱為一個 case。
文法格式:
switch(expression, case1, case2, case3....)
switch 語句必須遵循下面的規則:
- switch 語句中的 expression 是一個常量表達式,可以是整數或字元串,如果是整數則傳回對應的 case 位置值,如果整數不在位置的範圍内則傳回 NULL。
- 如果比對到多個值則傳回第一個。
- expression如果是字元串,則對應的是 case 中的變量名對應的值,沒有比對則沒有傳回值。
- switch 沒有預設參數可用。
# 如果是整數則傳回對應的 case 位置值
> x <- switch(3,"wang","ji","chuan")
> print(x)
[1] "chuan"
# 如果整數不在位置的範圍内則傳回 NULL
> y <- switch(5,"wang","ji","chuan")
> print(y)
NULL
# expression如果是字元串,則對應的是 case 中的變量名對應的值
> you.like<-"baidu"
> switch(you.like, google="www.google.com", runoob = "www.baidu.com", taobao = "www.taobao.com")
[1] "www.runoob.com"
二、循環語句
R 語言提供的循環類型有:
- repeat 循環
- while 循環
- for 循環
R 語言提供的循環控制語句有:
- break 語句
- Next 語句
循環類型
repeat 語句
repeat 循環會一直執行代碼,直到條件語句為 true 時才退出循環,退出要使用到 break 語句。
文法格式如下:
repeat {
// 相關代碼
if(condition) {
break
}
}
while 語句
隻要給定的條件為 true,R 語言中的 while 循環語句會重複執行一個目智語句。
文法格式如下:
while(condition)
{
statement(s);
}
for 語句
R 程式設計語言中 for 循環語句可以重複執行指定語句,重複次數可在 for 語句中控制。
文法格式如下:
for (value in vector) {
statements
}
循環控制
break 語句
break 語句插入在循環體中,用于退出目前循環或語句,并開始腳本執行緊接着的語句
三、函數
function_name <- function(arg_1, arg_2, ...) {
// 函數體
}
- function_name : 為函數名
- arg_1, arg_2, … : 形式參數清單