語句(statement)一條單獨的R語句或一組複合語句(包含在花括號中的一組R語句,使用分號分割)
條件(cond)是一條最終被解析爲真(TRUE)或假(FALSE)的表達式
表達式(expr)是一條數值或字符串的求值語句
序列(seq)是一個數值或字符串序列
- 重複和循環
1.for結構
for (var in seq) statement
2.while結構
while(cond)statement
- 條件執行
- if-else結構
if(cond)statement
if(cond)statement1 else statement2
eg.
if(is.character(grade)) grade <- as.factor(grade)
if(is.character(grade)) grade <- as.factor(grade) else print("Grade already is a factor")
2.ifelse結構
ifelse(cond,statement1,statement2) #if-else結構比較緊湊的向量化版本
ifelse(score > 0.5,print("Passed"),print("Failed")
3.switch結構
switch(expr,…)
feelings <- c("sad","afraid")
for(i in feelings)
print(
switch(i,
happy = "i am glad"
afraid = "there is nothing to fear"
sad = "cheer up"
)
)
R中有若干函數可以用來爲函數添加錯誤捕獲和糾正功能,你可以使用函數warning()來生成一條錯誤提示信息,用message()來生成一條錯誤診斷信息,或用stop()停止當前表達式的執行並提示錯誤。一份優秀的參考資料是Ducan Murdoch整理的“Debugging in R”(Debugging in R參考資料)