如何使用 R 突出显示 excel 中不符合所需条件的列
How to highlight columns in excel that don't meet desired condition using R
我希望标题具有足够的描述性或至少是有意义的。所以我知道你可以在 R 中完成所有这些数据操作,但并不是我所有的拼贴画都知道如何使用 R,所以我想制作一些 excel 文件供他们查看。
所以我看到有一些软件包可以帮助我完成我正在尝试做的事情,但我不确定如何以我想象的特定方式使用它们。
所以我有一个看起来像这样但规模非常大的数据集。所以每一列都有一个标题,并且每个单元格中要么有 "yes" 要么有空白。我想要做的是突出显示整个列(如果它是空白的)。所以在小例子中
我做了,理想情况下我会突出显示样本 1 和 2。这是否可以在 R 中完成然后导出到 excel 文档中?
sample1 sample2 sample3 sample4
yes yes
yes
yes
yes yes
假设您的空白在 R 中为 NA,以下代码行可以提供帮助。在代码中注释以在需要时进行解释。
library(openxlsx)
# find empty columns
columns_to_format <- which(sapply(df1, function(x) length(x) == sum(is.na(x)) ))
rows <- nrow(df1) + 1
wb <- createWorkbook()
# create style used for high lighting empty columns
highlight_cells <- createStyle(fgFill = "yellow")
# Add worksheet
addWorksheet(wb, "example")
writeData(wb, "example", x = df1)
# loop over columns to high light
for(i in seq_along(columns_to_format)) {
addStyle(wb, "example", style = highlight_cells, rows = 2:rows, cols = columns_to_format[i])
}
saveWorkbook(wb, "Example.xlsx", overwrite = TRUE)
数据:
df1 <- structure(list(sample1 = c("yes", "yes", "yes", "yes"), sample2 = c(NA_character_,
NA_character_, NA_character_, NA_character_), sample3 = c("yes",
NA, NA, "yes"), sample4 = c(NA_character_, NA_character_, NA_character_,
NA_character_)), row.names = c(NA, -4L), class = "data.frame")
我希望标题具有足够的描述性或至少是有意义的。所以我知道你可以在 R 中完成所有这些数据操作,但并不是我所有的拼贴画都知道如何使用 R,所以我想制作一些 excel 文件供他们查看。
所以我看到有一些软件包可以帮助我完成我正在尝试做的事情,但我不确定如何以我想象的特定方式使用它们。
所以我有一个看起来像这样但规模非常大的数据集。所以每一列都有一个标题,并且每个单元格中要么有 "yes" 要么有空白。我想要做的是突出显示整个列(如果它是空白的)。所以在小例子中 我做了,理想情况下我会突出显示样本 1 和 2。这是否可以在 R 中完成然后导出到 excel 文档中?
sample1 sample2 sample3 sample4
yes yes
yes
yes
yes yes
假设您的空白在 R 中为 NA,以下代码行可以提供帮助。在代码中注释以在需要时进行解释。
library(openxlsx)
# find empty columns
columns_to_format <- which(sapply(df1, function(x) length(x) == sum(is.na(x)) ))
rows <- nrow(df1) + 1
wb <- createWorkbook()
# create style used for high lighting empty columns
highlight_cells <- createStyle(fgFill = "yellow")
# Add worksheet
addWorksheet(wb, "example")
writeData(wb, "example", x = df1)
# loop over columns to high light
for(i in seq_along(columns_to_format)) {
addStyle(wb, "example", style = highlight_cells, rows = 2:rows, cols = columns_to_format[i])
}
saveWorkbook(wb, "Example.xlsx", overwrite = TRUE)
数据:
df1 <- structure(list(sample1 = c("yes", "yes", "yes", "yes"), sample2 = c(NA_character_,
NA_character_, NA_character_, NA_character_), sample3 = c("yes",
NA, NA, "yes"), sample4 = c(NA_character_, NA_character_, NA_character_,
NA_character_)), row.names = c(NA, -4L), class = "data.frame")