Hiển thị bảng hiệu quả trong rmarkdown

Tác giả: Hoàng Đức Anh | 2018-12-20

Khi phân tích dữ liệu, ta thường xuyên phải hiển thị dữ liệu dưới dạng bảng. Dữ liệu loại này có thể là dữ liệu chưa qua xử lý (dữ liệu thô) hoặc dữ liệu đã được tổng hợp và cần thể hiện để đơn vị kinh doanh có thể theo dõi.

Trong bài viết này, RAnalytics sẽ hướng dẫn các bạn hai cách thể hiện dữ liệu dạng bảng 1 cách hiệu quả trong rmarkdown với kableDT::datatable

Hiển thị bảng với kable

Cách đỡn giản nhất để hiển thị kết quả dạng bảng là sử dụng hàm kable có sẵn trong knitr. Ta có thể sử dụng như sau.

library(dplyr)
library(knitr)
mtcars %>% head %>% kable()
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1

 


 

Pro tips: Ta có thể để bảng hiện thị dạng mặc định là kable bằng cách chọn option Print data frame as: 'kable' trong rmarkdown

 

 

Hiển thị bảng động với DT::datatable

kable tuy thể hiện tốt dữ liệu dạng bảng nhưng chỉ hỗ trợ các bảng khoảng 10-15 dòng. Trong những trường hợp bảng chứa nhiều thông tin hoặc muốn tương tác trực tiếp với bảng, ta có thể sử dụng package DT với hàm datatable như sau.

iris %>% DT::datatable()

 

Kết quả hiển thị như sau:

 

Với DT, ta hoàn toàn có thể sort, tìm kiếm các thông tin trực tiếp ngay trên file kết quả của rmarkdown.


Như vậy, chúng ta đã vừa được làm quen với cách hiển thị bảng với knitr::kableDT::datatable. Đây là hai cách thông dụng nhất khi hiển thị dữ liệu dạng bảng ra kết quả với rmarkdown. Chúc các bạn học tập và làm việc hiệu quả với Ranalytics.vn!

comments powered by Disqus