IF LÀ GÌ??Câu lệnh if:
Câu lệnh if dùng để kiểm tra điều kiện. Nếu điều kiện
đúng (true) thì khối lệnh bên trong if sẽ được thực hiện.
# if (điều_kiện) {
# // Các câu lệnh được thực thi nếu điều_kiện đúng}
Câu lệnh if...else:
Dùng khi muốn thực hiện một khối lệnh nếu điều kiện đúng, và một khối lệnh khác nếu điều kiện sai.
# if (điều_kiện) {
# // Nếu điều kiện đúng
# } else {
# // Nếu điều kiện sai}
Câu lệnh
if...else if...else
# if (điều_kiện1) {
# // Nếu điều_kiện1 đúng
# } else if (điều_kiện2) {
# // Nếu điều_kiện1 sai và điều_kiện2 đúng
# } else {
# // Nếu tất cả các điều kiện trên đều sai
# }
if# Gán 50 cho a
a <- 50
# Nếu a > 100 thì cho ra kết quả là "sai"
if (a > 100) {print("sai")}
if...else# Gán 50 cho a
a <- 50
# Nếu a > 100 thì cho ra kết quả là "sai"
# Nếu a < 100 thì cho ra kết quả là "đúng"
if(a > 100) {print("sai")
} else {print("đúng")}
## [1] "đúng"
if...else if...else NÂNG CAOdiem <- 99
if (diem <= 50) {print("Yếu")
} else if (diem > 50 & diem <= 70) {print("Khá")
} else if (diem > 70 & diem <= 90) {print("Giỏi")
} else if (diem > 90) {print("Xuất sắc")}
## [1] "Xuất sắc"
ifelsescore <- c(1, 3, 7, 8.5, 9, 10)
ifelse(score <= 5,
"Yếu",
ifelse (score > 5 & score <= 7,
"Khá",
ifelse (score > 7 & score <= 9,
"Giỏi", "Xuất sắc")))
## [1] "Yếu" "Yếu" "Khá" "Giỏi" "Giỏi" "Xuất sắc"
Bài 1:
Viết một hàm nhận vào nhiệt độ (độ C) và trả về chuỗi:
Nhỏ hơn 20: Lạnh
Từ 20-30: Vừa
Lớn hơn 30: Nóng
phan_loai_nhiet_do <- function(temp) {
ifelse(temp <= 20,
"Lạnh",
ifelse(temp > 20 & temp <= 30,
"Vừa",
ifelse(temp > 30,
"Nóng")))
}
phan_loai_nhiet_do(26)
## [1] "Vừa"
Sửa:
phan_loai_nhiet_do <- function(temp) {
if (temp < 20) {
return("Lạnh")
} else if (temp <= 30) {
return("Vừa phải")
} else {
return("Nóng")
}
}
phan_loai_nhiet_do(25) # "Vừa phải"
## [1] "Vừa phải"
phan_loai_nhiet_do(15) # "Lạnh"
## [1] "Lạnh"
Bài 2:
Cho vector diem <- c(95, 72, 48, 66, 88), dùng ifelse() để phân loại:
= 90: “A”
= 70: “B”
= 50: “C”
< 50: “F”
Diem <- c(95, 72, 48, 66, 88)
ifelse(Diem >= 90,
"A",
ifelse(Diem >= 70,
"B",
ifelse(Diem >= 50,
"C","F")))
## [1] "A" "B" "F" "C" "B"
Sửa:
diem_1 <- c(95, 72, 48, 66, 88)
xep_loai <- ifelse(diem_1 >= 90, "A",
ifelse(diem_1 >= 70, "B",
ifelse(diem_1 >= 50, "C", "F")))
xep_loai
## [1] "A" "B" "F" "C" "B"