Mã vector hóa: phép nhân
Đoạn mã sau đây được viết theo phong cách truyền thống của C hoặc Fortran. Thay vì dùng phép nhân đã được vector hóa, nó dùng vòng lặp for.
x <- rnorm(10)
x2 <- numeric(length(x))
for(i in 1:10)
x2[i] <- x[i] * x[i]
Nhiệm vụ của bạn là làm cho mã này "đậm chất R" hơn bằng cách vector hóa nó. x đã được cung cấp để bạn sử dụng.
Bài tập này là một phần của khóa học
Viết mã R hiệu quả
Hướng dẫn bài tập
- Đọc đoạn mã ví dụ ở trên và tìm hiểu nó đang tính gì.
- Viết lại đoạn mã đó bằng một lời giải vector hóa. Gợi ý:
- Lời giải của bạn nên chỉ có một dòng mã.
- Bạn không nên dùng vòng lặp
for. - Toán tử nhân là vector hóa!
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Store your answer as x2_imp
x2_imp <-