我想自定义格式化表格中的数字列。我希望科学格式的p值,以及0或2位小数的其他数字列。我怎样才能做到这一点?我试过了
output$addtable <- renderTable({ ...} , digits = -2)
但是将所有数字列转换为科学格式。
output$addtable <- renderTable({
dataset <- datasetInput()
d=dataset[which(dataset$gene==input$textgene),]
names(d)=c("Gene","P","CmafUsed","NsnpsUsed","MinP","MinGene","Ratio")
if(dim(d)[1]==0) {'No entry found'} else return(d)
})
我正在寻找的是:
Gene P CmafUsed NsnpsUsed MinP MinGene Ratio
GENE1 1.50E-05 0.20 12 4.62E-05 GENE2 1.11
答案 0 :(得分:2)
既然你提到了科学,那就会想到:
df = data.frame(P = 1e-6, Rest = 1e-6)
df$P <- format(df$P, scientific = FALSE)
df$Rest <- format(df$Rest, scientific = TRUE)
答案 1 :(得分:2)
尝试添加:
d$P <- sprintf("%7.2e",d$P)
d$MinP <- sprintf("%7.2e",d$MinP)
我喜欢使用sprintf
因为它适用于多种语言,所以我不太需要记住。但是像BigDataScientist建议的format
也会起作用。