Menu
CoddyTech

Toán tử pipe trong R

Bài học 5 trên 14 trong khóa học Thao tác dữ liệu trong R của Coddy.

Toán tử pipe (%>%) trong R giúp code dễ đọc và dễ hiểu hơn, đặc biệt khi dùng với các gói thao tác dữ liệu như dplyr. Toán tử này lấy đầu ra từ một hàm rồi truyền làm đối số đầu tiên cho hàm tiếp theo, có thể hiểu là “rồi tiếp theo” trong luồng code.

 Cách dùng cơ bản

 Không dùng pipe:

result <- function2(function1(data))

 Dùng pipe:

result <- data %>% function1() %>% function2()

 Ví dụ

 Hãy xem pipe giúp code dễ đọc hơn như thế nào:

# Không dùng toán tử pipe
squared_sum <- sum(sqrt(c(1, 4, 9)))

# Dùng toán tử pipe
squared_sum <- c(1, 4, 9) %>% sqrt() %>% sum()

Lợi ích của việc dùng pipe

  • Dễ đọc hơn: Code chạy từ trái sang phải, giống như cách chúng ta đọc.
  • Giảm nhu cầu dùng biến trung gian.
  • Dễ thêm hoặc chỉnh sửa các bước trong một chuỗi thao tác.

 Dùng pipe với đối số

Bạn vẫn có thể chỉ định các đối số bổ sung sau pipe:

mtcars %>% head(n = 5)

Trong trường hợp này, mtcars được truyền làm đối số đầu tiên cho head(), còn n = 5 được truyền làm đối số thứ hai.

Hiểu toán tử pipe sẽ giúp bạn viết code R gọn gàng, dễ đọc hơn rất nhiều, đặc biệt khi làm việc với dplyr và các gói khác trong tidyverse.

quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tự làm thử

Bài học này không có thử thách code.

Tất cả bài học trong Thao tác dữ liệu trong R

Tự luyện tập: Trình biên dịch R online