Giả sử bạn có 1 data frame rất dài như sau:

# options(width = 400)
dim(check_4)
## [1] 127  62
check_4[1:10, 1:10]
##             1961 1962 1963 1964 1965 1966 1967 1968 1969 1970
## Afghanistan    1    1    1    1    1    1    1    1    1    1
## Albania        1    1    1    1    1    1    1    1    1    1
## Algeria        1    1    1    1    1    1    1    1    1    1
## Angola         1    1    1    1    1    1    1    1    1    1
## Argentina      1    1    1    1    1    1    1    1    1    1
## Australia      1    1    1    1    1    1    1    1    1    1
## Azerbaijan     0    0    0    0    0    0    0    0    0    0
## Bangladesh     1    1    1    1    1    1    1    1    1    1
## Belize         1    1    1    1    1    1    1    1    1    1
## Benin          1    1    1    1    1    1    1    1    1    1

Bạn áp dụng package kableExtra để tạo bảng cho dễ theo dõi thông tin.

library(kableExtra)

check_4[60:80, 20:35] %>%
    kbl(escape = FALSE) %>%
    kable_styling(bootstrap_options = c("striped", "hover", "condensed", "bordered", "responsive")) %>%
    column_spec(1, width_min = "7cm")
1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995
Japan 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Kazakhstan 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
Kenya 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Kyrgyzstan 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
Lao People’s Democratic Republic 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Liberia 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Madagascar 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Malawi 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Malaysia 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mali 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mauritania 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mauritius 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mexico 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Micronesia (Federated States of) 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
Morocco 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mozambique 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Myanmar 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Nepal 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Nicaragua 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Niger 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Nigeria 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Để đánh dấu những chỗ nào có giá trị 0 hay 1 thì bạn áp dụng đoạn code sau.

library(formattable)

# xử lý cho 1 cột
# check_4$`1961` <- color_tile("green", "orange")(check_4$`1961`)

#### tạo function

color_1 <- function(x) { 
    x <- color_tile("green", "orange")(x)
    return(x)
}

### ráp vào lệnh apply

check_5 <- apply(check_4[60:80, 20:35], MARGIN = 2, color_1)

as.data.frame(check_5) %>%
    kbl(escape = FALSE, format = "html") %>%
    kable_styling(html_font = "arial", full_width = TRUE, 
                  bootstrap_options = c("striped", "hover", "condensed", "bordered", "responsive")) %>%
    column_spec(1, width_min = "7cm", background = "yellow")
1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995
Japan 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Kazakhstan 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
Kenya 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Kyrgyzstan 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
Lao People’s Democratic Republic 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Liberia 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Madagascar 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Malawi 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Malaysia 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mali 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mauritania 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mauritius 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mexico 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Micronesia (Federated States of) 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
Morocco 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mozambique 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Myanmar 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Nepal 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Nicaragua 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Niger 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Nigeria 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Sơ kết

Trên đây là hướng dẫn highlight giá trị trong table. Để học R bài bản từ A đến Z, thân mời Bạn tham gia khóa học “HDSD R để xử lý dữ liệu” để có nền tảng vững chắc về R nhằm tự tay làm các câu chuyện dữ liệu của riêng mình!

ĐĂNG KÝ NGAY: https://www.tuhocr.com/register

Hướng dẫn cài đặt package tuhocr https://tuhocr.github.io/