R XLConnect – 根据列颜色过滤列

XLconnect软件包(或R任何其他软件包)中,是否可以读取headers具有颜色的Excel表,并根据这些颜色在R过滤它们?

例如, A, C & E column headers用绿色填充,在R中读取后,是否可以根据该颜色对它们进行过滤?

谢谢

是的,我相信它是:读取到R ,使用xlsxxlsx压缩:

 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) } 

想要更多信息? 去这里