## ----knitrPrep, include=FALSE, eval = TRUE------------------------------------ knitr::opts_chunk$set(echo = TRUE, fig.width=5, fig.height=4) ## ----clear_memory, eval = TRUE------------------------------------------------ rm(list=ls()) ## ----runchunks, eval = TRUE--------------------------------------------------- # Set whether or not the following chunks will be executed (run): execute.vignette <- FALSE ## ----load_libraries, eval=execute.vignette------------------------------------ # library(httk) # library(gdata) # library(ggplot2) # library(viridis) # library(censReg) # library(gmodels) # library(gplots) # library(scales) # library(colorspace) # library(gridExtra) ## ----scientific.notation, eval = execute.vignette----------------------------- # scientific_10 <- function(x) { # out <- gsub("1e", "10^", scientific_format()(x)) # out <- gsub("\\+","",out) # out <- gsub("10\\^01","10",out) # out <- parse(text=gsub("10\\^00","1",out)) # } ## ----setuppctable, eval=execute.vignette-------------------------------------- # pc.table <- NULL # pc.data <- subset(pc.data,fu != 0 & Exp_PC != 0 & Tissue %in% c("Adipose","Bone","Brain","Gut", # "Heart","Kidney","Liver","Lung","Muscle","Skin","Spleen","Blood Cells") & # tolower(Species) == 'rat' & !CAS %in% c('10457-90-6','5786-21-0','17617-23-1','69-23-8','2898-12-6', # '57562-99-9','59-99-4','2955-38-6','155-97-5','41903-57-5','58-55-9','77-32-7','59-05-2','60-54-8')) # cas.list <- get_cheminfo(model='schmitt',species='rat',suppress.messages=TRUE) # cas.list <- cas.list[cas.list %in% pc.data[,'CAS']] # ma.data.list <- subset(chem.physical_and_invitro.data,!is.na(logMA))[,'CAS'] # for(this.cas in cas.list){ # parameters <- parameterize_schmitt( # chem.cas=this.cas, # species='rat', # suppress.messages=TRUE) # init.parameters <- parameters # charge <- calc_ionization( # chem.cas=this.cas, # pH=7.4)$fraction_charged # if(!this.cas %in% ma.data.list){ # init.parameters$MA <- 10^(0.999831 - 0.016578*38.7 + 0.881721 * log10(parameters$Pow)) # } # pcs <- predict_partitioning_schmitt( # parameters=parameters, # species='rat', # regression=FALSE, # suppress.messages=TRUE # ) # init.pcs <- predict_partitioning_schmitt( # parameters=init.parameters, # species='rat', # regression=FALSE, # suppress.messages=TRUE) # for(this.tissue in subset(pc.data,CAS==this.cas)[,'Tissue']){ # if(this.tissue == 'Blood Cells') this.pc <- 'rbc' # else this.pc <- this.tissue # pc.table <- rbind(pc.table, # cbind( # as.data.frame(this.cas), # as.data.frame(this.tissue), # as.data.frame(log10( # init.pcs[[which(substr(names(init.pcs), # 2, # nchar(names(init.pcs))-3) == # tolower(this.pc))]] * # init.parameters$Funbound.plasma)), # as.data.frame(log10( # pcs[[which(substr(names(pcs), # 2, # nchar(names(pcs))-3) == # tolower(this.pc))]] * # parameters$unadjusted.Funbound.plasma)), # as.data.frame(log10( # init.pcs[[which(substr(names(init.pcs), # 2, # nchar(names(init.pcs))-3) == # tolower(this.pc))]] * # init.parameters$unadjusted.Funbound.plasma)), # as.data.frame(log10( # pcs[[which(substr(names(pcs), # 2, # nchar(names(pcs))-3) == tolower(this.pc))]] * # parameters$Funbound.plasma)), # as.data.frame(log10( # subset(pc.data, # CAS==this.cas & Tissue==this.tissue)[,'Exp_PC'])), # as.data.frame(subset(pc.data, # CAS==this.cas & Tissue==this.tissue)[,'LogP']), # as.data.frame(charge), # as.data.frame(as.character(subset(pc.data, # CAS == this.cas)[1,'A.B.N'])), # as.data.frame(subset(pc.data, # CAS == this.cas)[1,'fu']))) # } # } # colnames(pc.table) <- c('CAS','Tissue', # 'fup.correction', # 'ma.correction', # 'init.Predicted', # 'Predicted', # 'Experimental', # 'logP', # 'charge', # 'type', # 'fup') # init.error <- pc.table[,'Experimental'] - pc.table[,'init.Predicted'] # fup.error <- pc.table[,'Experimental'] - pc.table[,'fup.correction'] # ma.error <- pc.table[,'Experimental'] - pc.table[,'ma.correction'] # final.error <- pc.table[,'Experimental'] - pc.table[,'Predicted'] # fup.improvement <- abs(init.error) - abs(fup.error) # ma.improvement <- abs(init.error) - abs(ma.error) # final.improvement <- abs(init.error) - abs(final.error) # pc.table <- cbind(pc.table,fup.improvement,ma.improvement, final.improvement, # final.error,init.error,ma.error,fup.error) ## ----KpFigures, eval=execute.vignette----------------------------------------- # init.plot <- ggplot() + # geom_point(data=pc.table,aes(10^(init.Predicted),10^(Experimental))) + # geom_abline() + # labs(y=expression(paste("Measured ",K[p])), # x=expression(paste("Predicted ",K[p]))) + # theme(axis.text=element_text(size=16),axis.title=element_text(size=16), # plot.title=element_text(size=18,hjust = 0.5)) + # scale_x_log10(label=scientific_10,limits=c(0.01,10^4.5)) + # scale_y_log10(label=scientific_10,limits=c(0.01,10^4.5)) + # ggtitle('(A)') # print(init.plot) # init.stats <- summary(lm(Experimental ~ init.Predicted, # data=pc.table)) # # final.plot <- ggplot() + # geom_point(data=pc.table,aes(10^(Predicted),10^(Experimental))) + # geom_abline() + # labs(y=expression(paste("Measured ",K[p])), # x=expression(paste("Predicted ",K[p]))) + # theme(axis.text=element_text(size=16),axis.title=element_text(size=16), # plot.title=element_text(size=18,hjust=0.5)) + # scale_x_log10(label=scientific_10,limits=c(0.01,10^4.5)) + # scale_y_log10(label=scientific_10,limits=c(0.01,10^4.5)) + # ggtitle('(B)') # print(final.plot) # final.stats <- summary(lm(Experimental ~ Predicted, # data=pc.table)) # # fup.change.plot <- ggplot() + # geom_point(data=pc.table[order(pc.table[,'fup.improvement'],decreasing=F),], # aes(10^(fup.correction),10^(Experimental),color=fup.improvement)) + # geom_abline() + # labs(y=expression(paste("Measured ",K[p])), # x=expression(paste("Predicted ",K[p])),color='Improvement') + # theme(axis.text=element_text(size=16),axis.title=element_text(size=16)) + # scale_x_log10(label=scientific_10,limits=c(0.01,10^4.5)) + # scale_y_log10(label=scientific_10,limits=c(0.01,10^4.5)) + # scale_color_viridis(direction=-1,option='inferno') # print(fup.change.plot) # fup.stats <- summary(lm(Experimental ~ fup.correction, # data=pc.table)) # # ma.subset <- subset(pc.table,!CAS %in% ma.data.list) # ma.change.plot <- ggplot() + # geom_point(data=ma.subset[order(ma.subset[,'ma.improvement'] # ,decreasing=F),], # aes(10^(ma.correction),10^(Experimental),color=ma.improvement)) + # geom_abline() + # labs(y=expression(paste("Measured ",K[p])), # x=expression(paste("Predicted ",K[p])),color='Improvement') + # theme(axis.text=element_text(size=16),axis.title=element_text(size=16)) + # scale_x_log10(label=scientific_10,limits=c(0.01,10^4.5)) + # scale_y_log10(label=scientific_10,limits=c(0.01,10^4.5)) + # scale_color_viridis(direction=-1,option='inferno') # print(ma.change.plot) # ma.stats <- summary(lm(Experimental ~ ma.correction, # data=ma.subset)) # # fup.table <- data.frame(Test=c("Initial Tissue PC Accuracy","Fup Lipid Correction","Membrane Affinity","Final"), # RSquared = signif(c(init.stats$adj.r.squared, # fup.stats$adj.r.squared, # ma.stats$adj.r.squared, # final.stats$adj.r.squared),3), # RMSLE = signif(c(mean(init.stats$residuals^2,na.rm=TRUE)^(1/2), # mean(fup.stats$residuals^2,na.rm=TRUE)^(1/2), # mean(ma.stats$residuals^2,na.rm=TRUE)^(1/2), # mean(final.stats$residuals^2,na.rm=TRUE)^(1/2)),3) # ) # knitr::kable(fup.table) ## ----performPCregressions, eval=execute.vignette------------------------------ # regressions <- NULL # # for(tissue in as.character(unique(pc.table[,'Tissue']))){ # fit <- lm(Experimental ~ Predicted ,data=subset(pc.table,Tissue==tissue)) # smry <- summary(fit) # est <- estimable(fit, cm=diag(2), beta0=c(0,1), joint.test=TRUE) # regressions <- rbind(regressions,cbind(tissue,as.data.frame(fit$coefficients[['(Intercept)']]), # as.data.frame(fit$coefficients[['Predicted']]), # as.data.frame(smry$coefficients[['Predicted','Pr(>|t|)']]), # as.data.frame(smry$sigma),as.data.frame(smry$r.squared), # as.data.frame(smry[[11]][1,1]),as.data.frame(smry[[11]][2,2]), # as.data.frame(smry[[11]][1,2]),as.data.frame(smry$df[2]),as.data.frame(est[[3]]))) # } # colnames(regressions) <- c('Tissue','Intercept','Slope','P-value','SE','R-squared', # 'Int Var','Slp Var','Cov','df','estimable') # # for (this.col in 2:10) regressions[,this.col] <- signif(regressions[,this.col], 3) # regressions <- regressions[order(regressions[,1]),] # # knitr::kable(regressions, caption = "Table 1: The regressions for each tissue, after fup and membrane affinity adjustments, of the log10-transformed measured Kp regressed on # predicted Kp") # # write.table(regressions, # file=paste0("Pearce2017PCCalibration=",Sys.Date(),".txt"), # sep="/t", # row.names=FALSE) ## ----PCRegressionFigure, eval=execute.vignette-------------------------------- # x.cf <- seq(-2,3.5,.01) # for(tissue in as.character(unique(pc.table[,'Tissue']))) # { # conf <- qt(0.975,df=subset(regressions,Tissue==tissue)[['df']]+1) * # subset(regressions,Tissue==tissue)[['SE']] * # sqrt(subset(regressions,Tissue==tissue)[['Int Var']] + # x.cf^2 * subset(regressions,Tissue==tissue)[['Slp Var']] + # 2 * x.cf * subset(regressions,Tissue==tissue)[['Cov']] + 1) # line <- subset(regressions,Tissue==tissue)[['Intercept']] + # x.cf * subset(regressions,Tissue==tissue)[['Slope']] # y.cf <- line + conf # y.ncf <- line - conf # # cf <- cbind(as.data.frame(x.cf),as.data.frame(y.cf),as.data.frame(y.ncf)) # if(tissue == 'Blood Cells'){ # eval(parse(text= paste('Blood <- ggplot() + # geom_abline(linetype = "dashed") + # geom_point(data=subset(pc.table,Tissue == \'',tissue,'\'),aes(10^(Predicted), # 10^(Experimental))) + theme(axis.text=element_text(size=14), # axis.title=element_text(size=14),plot.title=element_text(size=14)) + # scale_x_log10(label=scientific_10,limits=c(0.01,1000)) + # scale_y_log10(label=scientific_10,limits=c(0.01,1000)) + # ylab(ifelse(tissue=="Brain",expression(paste("Inferred ",K[p])),"")) + # xlab(ifelse(tissue=="Skin", expression(paste("Predicted ",K[p])),"")) + # geom_line(data=cf,aes(10^(x.cf),10^(y.cf))) + # geom_line(data=cf,aes(10^(x.cf),10^(y.ncf))) + # geom_abline(intercept=subset(regressions,Tissue==tissue)[[\'Intercept\']], # slope=subset(regressions,Tissue==tissue)[[\'Slope\']]) + # ggtitle(\'Red Blood Cells\')',sep=''))) # }else{ # eval(parse(text= paste(tissue,' <- ggplot() + labs(y=expression(paste("Measured ",K[p])) # ,x=expression(paste("Predicted ",K[p]))) + geom_abline(linetype = "dashed") + # geom_point(data=subset(pc.table,Tissue == \'',tissue,'\'), # aes(10^(Predicted),10^(Experimental))) + theme(axis.text=element_text(size=14), # axis.title=element_text(size=14),plot.title=element_text(size=14)) + # scale_x_log10(label=scientific_10,limits=c(0.01,1000)) + # scale_y_log10(label=scientific_10,limits=c(0.01,1000)) + # ylab(ifelse(tissue=="Brain",expression(paste("Inferred ",K[p])),"")) + # xlab(ifelse(tissue=="Skin", expression(paste("Predicted ",K[p])),"")) + # geom_line(data=cf,aes(10^(x.cf),10^(y.cf))) + # geom_line(data=cf,aes(10^(x.cf),10^(y.ncf))) + # geom_abline(intercept=subset(regressions,Tissue==tissue)[[\'Intercept\']], # slope=subset(regressions,Tissue==tissue)[[\'Slope\']]) + # ggtitle(\'',tissue,'\')',sep=''))) # } # } # # grid.arrange(Adipose, Blood, Bone, Brain, Gut, Heart, Kidney, Liver, Lung, Muscle, Skin, Spleen, nrow=4) ## ----Vdevalaution, eval=execute.vignette-------------------------------------- # obach <- subset(Obach2008,CAS %in% get_cheminfo(model='schmitt')) # vd.table <- NULL # # for(this.cas in obach[,'CAS']){ # parameters <- parameterize_schmitt( # chem.cas=this.cas, # suppress.messages=TRUE) # init.parameters <- parameters # if(!this.cas %in% ma.data.list){ # init.parameters$MA <- 10^(0.999831 - 0.016578*37 + 0.881721 * log10(parameters$Pow)) # } # pcs <- predict_partitioning_schmitt( # parameters=parameters, # regression=FALSE, # suppress.messages=TRUE) # init.pcs <- predict_partitioning_schmitt( # parameters=init.parameters, # regression=FALSE, # suppress.messages=TRUE) # reg.pcs <- predict_partitioning_schmitt( # parameters=parameters, # regression=TRUE, # suppress.messages=TRUE) # vdist <- calc_vdist( # parameters=c(pcs,Funbound.plasma=parameters$Funbound.plasma), # suppress.messages=TRUE) # init.vdist <- calc_vdist( # parameters=c( # init.pcs, # Funbound.plasma=parameters$unadjusted.Funbound.plasma), # suppress.messages = TRUE) # reg.vdist <- calc_vdist( # parameters=c(reg.pcs,Funbound.plasma=parameters$Funbound.plasma), # suppress.messages = TRUE) # vd.table <- rbind( # vd.table, # cbind(as.data.frame(this.cas),as.data.frame(log10(init.vdist)), # as.data.frame(log10(vdist)),as.data.frame(log10(reg.vdist)), # as.data.frame(log10(subset(obach,CAS==this.cas)[['VDss (L/kg)']])))) # } # colnames(vd.table) <- c( # 'CAS', # 'init.vdist', # 'corrected.vdist', # 'calibrated.vdist', # 'Experimental') # init.error <- vd.table[,'Experimental'] - vd.table[,'init.vdist'] # correction.error <- vd.table[,'Experimental'] - vd.table[,'corrected.vdist'] # calibration.error <- vd.table[,'Experimental'] - vd.table[,'calibrated.vdist'] # correction.improvement <- abs(init.error) - abs(correction.error) # calibration.improvement <- abs(correction.error) - abs(calibration.error) # vd.table <- cbind(vd.table,correction.improvement,calibration.improvement, # init.error,correction.error,calibration.error) ## ----VdistRegressions, eval=execute.vignette---------------------------------- # fit <- lm(Experimental ~ calibrated.vdist,data=vd.table) # smry <- summary(fit) # calibrated.reg <- cbind(as.data.frame(fit$coefficients['(Intercept)']), # as.data.frame(fit$coefficients['calibrated.vdist']), # as.data.frame(smry$coefficients['calibrated.vdist','Pr(>|t|)']), # as.data.frame(smry$sigma),as.data.frame(smry$r.squared)) # fit <- lm(Experimental ~ init.vdist,data=vd.table) # smry <- summary(fit) # init.reg <- cbind(as.data.frame(fit$coefficients['(Intercept)']), # as.data.frame(fit$coefficients['init.vdist']), # as.data.frame(smry$coefficients['init.vdist','Pr(>|t|)']), # as.data.frame(smry$sigma),as.data.frame(smry$r.squared)) # fit <- lm(Experimental ~ corrected.vdist,data=vd.table) # smry <- summary(fit) # corrected.reg <- cbind(as.data.frame(fit$coefficients['(Intercept)']), # as.data.frame(fit$coefficients['corrected.vdist']), # as.data.frame(smry$coefficients['corrected.vdist','Pr(>|t|)']), # as.data.frame(smry$sigma),as.data.frame(smry$r.squared)) # colnames(init.reg) <- colnames(corrected.reg) <- # colnames(calibrated.reg) <- c('Intercept','Slope','P-value','Std Err','R-squared') ## ----VdistPlots, eval=execute.vignette---------------------------------------- # init.vd.plot <- ggplot(vd.table,aes(10^(init.vdist),10^(Experimental))) + geom_point() + # geom_abline(intercept = init.reg[['Intercept']], slope = init.reg[["Slope"]]) + # geom_abline(linetype = "dashed") + xlab("Predicted Volume of Distribution") + # ylab("Measured Volume of Distribution") + theme(axis.text=element_text(size=16), # axis.title=element_text(size=16),plot.title=element_text(size=18,hjust = 0.5)) + # scale_x_log10(label=scientific_10,limits=c(10^(-1.5),10^(8.5))) + # scale_y_log10(label=scientific_10,limits=c(10^(-1.5),10^(8.5))) + # ggtitle('(A)') # print(init.vd.plot) # # correction.plot <- ggplot() + # geom_point(data=vd.table[order(vd.table[,'correction.improvement'],decreasing=F),], # aes(10^(corrected.vdist),10^(Experimental),color=correction.improvement)) + # geom_abline(intercept = corrected.reg[['Intercept']],slope = corrected.reg[["Slope"]]) + # geom_abline(linetype = "dashed") + xlab("Predicted Volume of Distribution") + # ylab("Measured Volume of Distribution") + theme(legend.position = c(.95, .95), # legend.justification = c("right", "top"),legend.box.just = "right", # legend.margin = margin(6, 6, 6, 6),axis.text=element_text(size=16), # axis.title=element_text(size=16),plot.title=element_text(size=18,hjust = 0.5)) + # scale_x_log10(limits=c(10^(-1.5),10^(3))) + scale_y_log10(limits=c(10^(-1.5),10^(3))) + # ggtitle('(B)') + scale_color_viridis(direction=-1,option='inferno') # print(correction.plot) # # calibration.plot <- ggplot() + # geom_point(data=vd.table[order(vd.table[,'calibration.improvement'],decreasing=F),], # aes(10^(calibrated.vdist),10^(Experimental),color=calibration.improvement)) + # geom_abline(intercept = calibrated.reg[['Intercept']],slope = calibrated.reg[["Slope"]]) + # geom_abline(linetype = "dashed") + xlab("Predicted Volume of Distribution") + # ylab("Measured Volume of Distribution") + theme(legend.position = c(.95, .95), # legend.justification = c("right", "top"),legend.box.just = "right", # legend.margin = margin(6, 6, 6, 6),axis.text=element_text(size=16), # axis.title=element_text(size=16),plot.title=element_text(size=18,hjust = 0.5)) + # scale_x_log10(limits=c(10^(-1.5),10^(3))) + scale_y_log10(limits=c(10^(-1.5),10^(3))) + # ggtitle('(C)') + scale_color_viridis(direction=-1,option='inferno') # print(calibration.plot) ## ----bloodtoplasmaevaluation, eval=execute.vignette--------------------------- # rb2p.data <- subset(chem.physical_and_invitro.data,!is.na(Human.Rblood2plasma)) # measured.rb2p <- NULL # measured.krbc <- NULL # predicted.rb2p <- NULL # predicted.krbc <- NULL # cas <- NULL # charge <- NULL # fup <- NULL # logP <- NULL # pka_donor <- NULL # pka_accept <- NULL # for(this.cas in rb2p.data[rb2p.data[,'CAS'] %in% # get_cheminfo(model='schmitt', suppress.messages = TRUE),'CAS']) # { # rb2p <- get_rblood2plasma(chem.cas=this.cas) # krbc <- (rb2p + .44 - 1) / 0.44 # measured.rb2p <- c(measured.rb2p,rb2p) # measured.krbc <- c(measured.krbc,krbc) # parameters <- parameterize_schmitt( # chem.cas=this.cas, # suppress.messages = TRUE) # pcs <- predict_partitioning_schmitt( # parameters=parameters, # suppress.messages=TRUE) # predicted.krbc <- c(predicted.krbc,pcs[['Krbc2pu']] * parameters$Funbound.plasma) # cas <- c(cas,this.cas) # charge <- c(charge,calc_ionization(chem.cas=this.cas,pH=7.4)$fraction_charged) # fup <- c(fup,parameters$unadjusted.Funbound.plasma) # logP <- c(logP,log10(parameters$Pow)) # pka_donor <- c(pka_donor,paste(parameters$pKa_Donor,collapse=',')) # pka_accept <- c(pka_accept,paste(parameters$pKa_Accept,collapse=',')) # } # predicted.rb2p <- 1 - 0.44 + 0.44 * predicted.krbc # rb2p.table <- cbind(as.data.frame(cas),as.data.frame(predicted.rb2p),as.data.frame(measured.rb2p)) # colnames(rb2p.table) <- c('cas','predicted.rb2p','measured.rb2p') # error <- log10(rb2p.table[,'measured.rb2p']) - log10(rb2p.table[,'predicted.rb2p']) # rb2p.table <- cbind(rb2p.table,error,charge,fup,logP) # # error <- log10(measured.krbc) - log10(predicted.krbc) # krbc.table <- cbind(as.data.frame(cas),as.data.frame(predicted.krbc),as.data.frame(measured.krbc), # as.data.frame(error),charge,fup,logP,pka_donor,pka_accept) ## ----RBCStats, eval=execute.vignette------------------------------------------ # pdta <- data.frame(x = predicted.krbc, # y = measured.krbc) # pdta$y[pdta$y <= 0.1] <- 0.1 # pdta$Censoring <- factor(c("Not Censored","Censored")[as.numeric(pdta$y <= 0.1) + 1]) # y <- measured.krbc # x <- cbind(rep(1, length(y)),-1 * log10(predicted.krbc)) # colnames(x) <- c("Intercept","Predicted") # cc <- as.numeric(y <= 0.1) # y[y < 0.1] <- 0.1 # y <- -log10(y) # # out <- censReg(y~x, data = pdta, left=0.1) # out$betas <- out$estimate ## ----RBCFigure, eval=execute.vignette----------------------------------------- # censored.regression <- ggplot() + # geom_point(data=pdta,aes(x=x,y=y, color=Censoring)) + # scale_x_log10(limits=c(.0009,40)) + scale_y_log10(limits=c(.1,4),breaks=c(.1,.5,2.5)) + # labs(y=expression(paste("Inferred ",K[p])),x=expression(paste("Predicted ",K[p]))) + # geom_abline(intercept=0, slope=1, linetype='dashed') + # theme(axis.text=element_text(size=16),axis.title=element_text(size=16), # plot.title=element_text(size=18,hjust=0.5),legend.position = c(0.11, .8)) + # geom_abline(slope=out$betas[2],intercept=-out$betas[1]) + ggtitle('(B)') # print(censored.regression) # # rb2p.plot <- ggplot(rb2p.table,aes(predicted.rb2p,measured.rb2p)) + # geom_point() + scale_x_log10(lim=c(.52,18)) + # scale_y_log10(lim=c(.52,2.5),breaks=c(0.5,1,2)) + geom_abline(linetype='dashed') + # labs(y=expression(paste("Measured Whole Blood ",K[p])), # x=expression(paste("Predicted Whole Blood ",K[p]))) + # theme(axis.text=element_text(size=16),axis.title=element_text(size=16), # plot.title=element_text(size=18,hjust=0.5)) + ggtitle('(A)') # print(rb2p.plot) ## ----summarytable, eval=execute.vignette-------------------------------------- # heatmap.table <- NULL # for(this.cas in get_cheminfo(model='schmitt')){ # parms <- parameterize_schmitt( # chem.cas=this.cas, # suppress.messages = TRUE) # pcs <- predict_partitioning_schmitt( # parameters=parms, # suppress.messages = TRUE) # heatmap.table <- cbind(heatmap.table,log10(unlist(pcs)[1:11]*parms$Funbound.plasma)) # } # rownames(heatmap.table) <- c('Adipose','Bone','Brain','Gut','Heart', # 'Kidney','Liver','Lung','Muscle','Skin','Spleen') # colnames(heatmap.table) <- rep("",dim(heatmap.table)[2]) ## ----summaryheatmap, eval=execute.vignette------------------------------------ # pal <- function (n, h = c(260, -328), c = 80, l = c(30, 100), power = 1.5, # fixup = TRUE, gamma = NULL, alpha = 1, ...) # { # if (!is.null(gamma)) # warning("'gamma' is deprecated and has no effect") # if (n < 1L) # return(character(0L)) # h <- rep(h, length.out = 2L) # c <- c[1L] # l <- rep(l, length.out = 2L) # power <- rep(power, length.out = 2L) # rval <- seq(1, -1, length = n) # rval <- hex(polarLUV(L = l[2L] - diff(l) * abs(rval)^power[2L], # C = c * abs(rval)^power[1L], H = ifelse(rval > 0, h[1L], # h[2L])), fixup = fixup, ...) # if (!missing(alpha)) { # alpha <- pmax(pmin(alpha, 1), 0) # alpha <- format(as.hexmode(round(alpha * 255 + 1e-04)), # width = 2L, upper.case = TRUE) # rval <- paste(rval, alpha, sep = "") # } # return(rval) # } # # hclust.ave <- function(x) hclust(x, method="ward.D2") # heatmap.2(heatmap.table,col=pal,trace="none", hclustfun=hclust.ave, # key.xlab=expression(paste("log10 ",K[p]," Value")), # key.ylab=expression(paste("Number of ",K[p])), # key.title="Partition Coefficient",xlab="Chemicals",cex.lab=2,margins=c(2,5))