我试图按照描述的这里对ELISA数据(数字)表进行样式化,并得到以下代码错误
brks <- quantile(df, probs = seq(.05, .95, .05), na.rm = TRUE)

我使用了以下代码,如网页中所述。有人能告诉我我在这里缺少什么吗?
df <- matrix(nrow=8, ncol=12)
for (i in 1:8) {
for (j in 1:12)
df[i,j] <- format(as.numeric(elisa65[i,j])/as.numeric(elisa74[i,j]),digits = 4)
}
brks <- quantile(df, probs = seq(.05, .95, .05), na.rm = TRUE)
clrs <- round(seq(255, 40, length.out = length(brks) + 1), 0)
%>% {paste0("rgb(255,", ., ",", ., ")")}
DT::datatable(df) %>% formatStyle(names(df), backgroundColor = styleInterval(brks, clrs))

发布于 2017-03-08 00:25:01
我注意到代码中有两个问题:
clrs是一个字符,您实际上并不是在计算对rgb的调用df是一个matrix,您在上面的代码中将它看作是一个data.frame。试试这个
require(dplyr)
require(DT)
df <- matrix(rnorm(8 * 12), nrow=8, ncol=12)
brks <- quantile(df, probs = seq(.05, .95, .05), na.rm = TRUE)
clrs <- sapply(round(seq(255, 40, length.out = length(brks) + 1), 0),
function(x) rgb(255, x, x, maxColorValue = 255))
df <- data.frame(df)
datatable(df) %>% formatStyle(names(df), backgroundColor = styleInterval(brks, clrs))https://stackoverflow.com/questions/42660698
复制相似问题