R - Quyết định: Hướng dẫn dành cho người mới bắt đầu
Xin chào, các bạn lập trình viên tương lai! Tôi rất vui mừng được làm hướng dẫn viên của bạn trong hành trình thú vị này vào thế giới quyết định trong R. Là một ai đó đã dạy khoa học máy tính trong nhiều năm, tôi đã thấy rất nhiều sinh viên trở nên hứng thú khi nắm bắt được các khái niệm này. Vậy, hãy cùng nhau lặn vào và đưa ra một số quyết định!
Quyết định là gì trong lập trình?
Trước khi chúng ta nhảy vào các chi tiết cụ thể của R, hãy nói về việc quyết định có nghĩa là gì trong lập trình. Hãy tưởng tượng bạn đang ở một cửa hàng kem. Bạn không chỉ lấy flavors đầu tiên bạn thấy, phải không? Bạn đưa ra một quyết định dựa trên sở thích của mình. Lập trình cũng tương tự - chúng ta muốn mã của mình đưa ra các lựa chọn dựa trên một số điều kiện.
Quyết định cơ bản trong R: Câu lệnh if
Cú pháp
Hãy bắt đầu với công cụ quyết định cơ bản nhất trong R: câu lệnh if
. Dưới đây là cấu trúc cơ bản của nó:
if (condition) {
# Mã để thực thi nếu điều kiện là ĐÚNG
}
Một ví dụ đơn giản
Hãy giả sử chúng ta muốn kiểm tra xem một số có phải là dương không. Đây là cách chúng ta làm:
x <- 5
if (x > 0) {
print("x là số dương")
}
Khi bạn chạy mã này, bạn sẽ thấy "x là số dương" được in ra. Tại sao? Bởi vì 5 thực sự lớn hơn 0, vì vậy điều kiện x > 0
là ĐÚNG.
Thêm câu lệnh else
Nhưng nếu chúng ta muốn làm gì đó khi điều kiện là SAI? Đó là khi câu lệnh else
được sử dụng:
x <- -3
if (x > 0) {
print("x là số dương")
} else {
print("x không phải là số dương")
}
Chạy mã này, và bạn sẽ thấy "x không phải là số dương". Câu lệnh else
cho phép chúng ta xử lý trường hợp SAI.
Quyết định phức tạp hơn: else if
Đôi khi, cuộc sống (và lập trình) không chỉ có đen và trắng. Chúng ta có thể cần kiểm tra nhiều điều kiện. Đó là khi else if
ra vào:
x <- 0
if (x > 0) {
print("x là số dương")
} else if (x < 0) {
print("x là số âm")
} else {
print("x là số không")
}
Mã này kiểm tra xem x có phải là số dương, số âm hay số không. Nó giống như một cuốn sách chọn-l択 của riêng bạn cho các số!
Câu lệnh switch
mạnh mẽ
Khi bạn có nhiều trường hợp cụ thể để kiểm tra, câu lệnh switch
có thể là người bạn tốt nhất của bạn. Nó giống như một máy bán hàng tự động cho mã thực thi:
day <- "Monday"
mood <- switch(day,
"Monday" = "Cần cà phê",
"Friday" = "TGIF!",
"It's a regular day"
)
print(mood)
Điều này sẽ in ra "Cần cà phê". Câu lệnh switch
khớp giá trị của day
với các tùy chọn và trả về giá trị tương ứng.
Thực thi có điều kiện với ifelse()
R có một hàm rất tiện lợi gọi là ifelse()
kết hợp câu lệnh if-else thành một dòng duy nhất:
x <- 10
result <- ifelse(x > 5, "Lớn hơn 5", "Không lớn hơn 5")
print(result)
Điều này sẽ in ra "Lớn hơn 5". Hàm ifelse()
rất tốt cho các điều kiện nhanh và đơn giản.
Các toán tử so sánh: Đá xây dựng của các điều kiện
Để đưa ra quyết định, chúng ta cần so sánh các giá trị. Dưới đây là các toán tử so sánh trong R:
Toán tử | Ý nghĩa |
---|---|
< |
Nhỏ hơn |
> |
Lớn hơn |
<= |
Nhỏ hơn hoặc bằng |
>= |
Lớn hơn hoặc bằng |
== |
Bằng |
!= |
Không bằng |
Ví dụ:
a <- 5
b <- 10
print(a < b) # ĐÚNG
print(a == b) # SAI
Các toán tử logic: Kết hợp các điều kiện
Đôi khi, chúng ta cần kiểm tra nhiều điều kiện cùng một lúc. Đó là khi các toán tử logic ra vào:
Toán tử | Ý nghĩa |
---|---|
& |
VÀ |
| |
HOẶC |
! |
KHÔNG |
Dưới đây là cách bạn có thể sử dụng chúng:
age <- 25
has_license <- TRUE
if (age >= 18 & has_license) {
print("Bạn có thể lái xe")
} else {
print("Bạn không thể lái xe")
}
Điều này kiểm tra xem ai đó có phải là cả người lớn và có bằng lái trước khi cho phép họ lái xe.
Kết hợp tất cả: Một ví dụ thực tế
Hãy tạo một hệ thống chấm điểm đơn giản:
grade_student <- function(score) {
if (score >= 90) {
return("A")
} else if (score >= 80) {
return("B")
} else if (score >= 70) {
return("C")
} else if (score >= 60) {
return("D")
} else {
return("F")
}
}
# Hãy kiểm tra hàm của chúng ta
students <- c("Alice", "Bob", "Charlie")
scores <- c(95, 82, 65)
for (i in 1:length(students)) {
grade <- grade_student(scores[i])
print(paste(students[i], "đạt điểm", grade))
}
Mã này định nghĩa một hàm để gán các điểm chữ dựa trên điểm số, sau đó áp dụng nó cho danh sách các học sinh.
Kết luận
Chúc mừng! Bạn đã vừa bước những bước đầu tiên vào thế giới quyết định trong R. Nhớ rằng, như việc học bất kỳ kỹ năng mới nào, thực hành làm cho hoàn hảo. Đừng sợ hãi khi thử nghiệm với các khái niệm này - đó là cách học thực sự xảy ra!
Trong những năm dạy học của tôi, tôi đã thấy rằng những sinh viên chơi đùa với mã, làm vỡ things, và sau đó sửa chúng lại thường hiểu các khái niệm sâu sắc hơn. Vậy hãy tiến lên, đưa ra các quyết định (trong mã của bạn), và hãy vui vẻ!
Credits: Image by storyset