在XLconnect
包(或R
中的任何其他包)中,是否可以阅读Excel
中包含颜色的headers
表格,并在R
中对其进行过滤{1}}基于这些颜色?
例如,column headers
A, C & E
填充绿色,在R中读取后,是否可以根据该颜色过滤它们?
由于
答案 0 :(得分:1)
R
,使用xlsx
包并解压缩:
library(xlsx)
wb <- loadWorkbook("test.xlsx")
sheet1 <- getSheets(wb)[[1]]
获取行和单元格:
# get all rows
rows <- getRows(sheet1)
cells <- getCells(rows)
# quick look at the values
sapply(cells, getCellValue)
# 1.1 2.1 3.1 4.1 5.1 6.1 7.1 8.1 9.1 10.1 11.1
# "x" "1" "2" "3" "4" "5" "6" "7" "8" "9" "10"
现在颜色信息在哪里?它位于cell style
:
styles <- sapply(cells, getCellStyle)
现在是一个为您提供单元格RGB
值的函数:
注意:以下行为单元格提供背景颜色style$getFillForegroundXSSFColor()
cellColor <- function(style) {
fg <- style$getFillForegroundXSSFColor()
rgb <- tryCatch(fg$getRgb(), error = function(e) NULL)
rgb <- paste(rgb, collapse = "")
return(rgb)
}
想了解更多信息?去here