## ----style, echo=FALSE, results='asis'-----------------------------------
BiocStyle::latex()

## ----opts, include=FALSE-------------------------------------------------
knitr::opts_chunk$set(concordance=TRUE, 
                      eval = TRUE,
                      cache = TRUE,
                      resize.width="0.45\\textwidth",
                      fig.align='center',
                      tidy = FALSE,
                      message=FALSE)

## ----install, eval=FALSE-------------------------------------------------
## source("http://bioconductor.org/biocLite.R")
## biocLite("TPP")

## ----package-------------------------------------------------------------
library("TPP")

## ----load_tr_data--------------------------------------------------------
data("hdacTR_smallExample")

## ----locate_example_data-------------------------------------------------
system.file('example_data', package = 'TPP')

## ----tr_config_table-----------------------------------------------------
print(hdacTR_config)

## ----dataSummaryTP-------------------------------------------------------
summary(hdacTR_data)

## ----dataStatsTP---------------------------------------------------------
data.frame(hdacTR_config[, c("Experiment", "Condition")],
           "No.of Proteins"=sapply(hdacTR_data, nrow), row.names=NULL)

## ----datahead------------------------------------------------------------
hdacVehicle1 <- hdacTR_data[["Vehicle_1"]]
head(hdacVehicle1)

## ----result_path_TR------------------------------------------------------
resultPath = file.path(getwd(), 'Panobinostat_Vignette_Example')

## ----analyzeTR-----------------------------------------------------------
TRresults <- analyzeTPPTR(configTable=hdacTR_config, data=hdacTR_data, nCores=2,
                          resultPath=resultPath, plotCurves=FALSE) 

## ----trTargets-----------------------------------------------------------
tr_targets <- subset(TRresults, fulfills_all_4_requirements)$Protein_ID
print(tr_targets)

## ----trHDACTargets-------------------------------------------------------
hdac_targets <- grep("HDAC", tr_targets, value=TRUE)
print(hdac_targets)

## ----trImport, message=TRUE----------------------------------------------
trData <- tpptrImport(configTable=hdacTR_config, data=hdacTR_data)

## ----trData_vehicle1-----------------------------------------------------
trData[["Vehicle_1"]]

## ----trDefaultNormReqs---------------------------------------------------
print(tpptrDefaultNormReqs())

## ----trNormalization, message=TRUE---------------------------------------
normResults <- tpptrNormalize(data=trData)
trDataNormalized <- normResults[["normData"]]

## ----trSelectHDACs-------------------------------------------------------
trDataHDAC <- lapply(trDataNormalized, function(d) d[featureNames(d) %in% hdac_targets,])

## ----trFitHDAC, message=TRUE---------------------------------------------
trDataHDAC <- tpptrCurveFit(data=trDataHDAC, resultPath=resultPath, nCores=1)

## ----fittedMeltPars------------------------------------------------------
pData(featureData(trDataHDAC[["Vehicle_1"]]))[,1:5]

## ----loadTRfitResultss---------------------------------------------------
load(file.path(resultPath, "dataObj", "fittedData.RData"), verbose=TRUE)

## ----trPvals, message=TRUE-----------------------------------------------
bNew <- 200
print(sapply(trDataFitted, annotation))
TRresultsBNew <- tpptrAnalyzeMeltingCurves(data=trDataFitted, 
                                           pValParams=list(binWidth=bNew,
                                                           minR2=0.8, 
                                                           maxPlateau=0.3))

## ----compBWidth----------------------------------------------------------
tr_targetsBNew <- subset(TRresultsBNew, fulfills_all_4_requirements)$Protein_ID
onlyB300 <- setdiff(tr_targets, tr_targetsBNew)
onlyBNew <- setdiff(tr_targetsBNew, tr_targets)
print(onlyB300)
print(onlyBNew)

## ----trExport, message=TRUE----------------------------------------------
tppExport(tab=TRresultsBNew, file=file.path(resultPath, paste("targets_binWidth",bNew,".xlsx",sep="")))

## ----newNormReqs---------------------------------------------------------
trNewReqs <- tpptrDefaultNormReqs()
print(trNewReqs)
trNewReqs$otherRequirements[1,"colName"] <- "mycolName"
trNewReqs$fcRequirements[,"fcColumn"] <- c(6,8,9)
print(trNewReqs)

## ----load_ccr_data-------------------------------------------------------
data("hdacCCR_smallExample")

## ----analyzeCCR----------------------------------------------------------
CCRresults <- analyzeTPPCCR(configTable=hdacCCR_config[1,], data=hdacCCR_data[[1]],
                            resultPath=resultPath, plotCurves=FALSE, nCores=1) 

## ----ccrTargets----------------------------------------------------------
ccr_targets <- subset(CCRresults, passed_filter_Panobinostat_1)$Protein_ID
print(ccr_targets)

## ----ccrHDACTargets------------------------------------------------------
hdac_targets <- grep("HDAC", ccr_targets, value=TRUE)
print(hdac_targets)

## ----ccrImport, message=TRUE---------------------------------------------
ccrData <- tppccrImport(configTable=hdacCCR_config[1,], data=hdacCCR_data[[1]])

## ----ccrNormalization, message=TRUE--------------------------------------
ccrDataNormalized <- tppccrNormalize(data=ccrData)

## ----ccrTransform, message=TRUE------------------------------------------
ccrDataTransformed <- tppccrTransform(data=ccrDataNormalized)[[1]]

## ----ccrSelectHDACs------------------------------------------------------
ccrDataHDAC <- ccrDataTransformed[match(hdac_targets, featureNames(ccrDataTransformed)),]

## ----ccrFitHDAC, message=TRUE--------------------------------------------
ccrDataFittedHDAC <- tppccrCurveFit(data=list(Panobinostat_1=ccrDataHDAC), nCores=1)
tppccrPlotCurves(ccrDataFittedHDAC, resultPath=resultPath, nCores=1)

## ----fittedDRPars--------------------------------------------------------
ccrResultsHDAC <- tppccrResultTable(ccrDataFittedHDAC)
print(ccrResultsHDAC[,c(1, 22:25)])