## ----setup, include = FALSE---------------------------------------------------
knitr::opts_chunk$set(
  collapse = FALSE,
  comment = "#>",
  tidy=FALSE,
  engine='R'
)

## ---- eval=FALSE--------------------------------------------------------------
#  install.packages("ELISAtools")

## ---- eval=T------------------------------------------------------------------
    library(ELISAtools)

## -----------------------------------------------------------------------------
dir_file<-system.file("extdata", package="ELISAtools")
tbl.design<-read.table(file.path(dir_file,"design.txt"), header=T,sep="\t")
print(tbl.design)	   

## -----------------------------------------------------------------------------
system.file("extdata", package="ELISAtools");

## ----chunk1, fig.show='asis', fig.cap="\\label{fig:chunk1}Raw batch data"-----
dir_file<-system.file("extdata", package="ELISAtools")
  
batches<-loadData(file.path(dir_file,"design.txt"))
  
#batch data object
names(batches)
length(batches)
  
#visualize the raw day without analyses
plotAlignData(batches);

## ----chunk2-------------------------------------------------------------------
#make a guess for the initial value of the parameters, 
#the other two parameters a and d will be estimated based on data. 
#Sometimes it is important to make the initial values 
#closed to the true ones 
pars<-c(7.2,0.05, 0.015)
names(pars)<-c("xmid", "scal", "g")
  
#do fitting. model will be written into data set.
batches<-runFit(pars=pars,  batches=batches, refBatch.ID=1  )
  
#now call to do predications based on the model.
batches<-predictAll(batches);

## ----chunk3, fig.show='asis', fig.cap="\\label{fig:chunk3}Batch 1 ELISA data with 5-parameter fitting (no S factor adjustment)"----
#plotting batch 1 data for visualizing
plotBatchData(batches[[1]])

## ----chunk4, fig.show='asis', fig.cap="\\label{fig:chunk4} ELISA batch data with 5-parameter fitting and S factor adjustment"----
#plotting batch data with adjustment for visualizing
plotAlignData(batches)

## ---- eval=F------------------------------------------------------------------
#  #save the batch data with fitting results and S factors
#  fn<-file.path(tempdir(),"batchAnalysis.txt");
#  saveDataText(batches, fn);

## ----eval=F-------------------------------------------------------------------
#  #reporting. need to specify a directory that is writable!!!
#  reportHtml(batches, file.dir=tempdir())

## ----eval=F-------------------------------------------------------------------
#    #now saving the combine data.
#    saveDB(batches, file.path(tempdir(),"elisa_tool1.rds"));
#    batches.old<-loadDB(file.path(tempdir(), "elisa_tool1.rds"));

## ---- eval=F------------------------------------------------------------------
#    #now suppose want to join/combine the two batches, old and new
#    batches.com<-combineData(batches.old, batches);
#    reportHtml(batches.com,file.dir=tempdir())

## -----------------------------------------------------------------------------
  sessionInfo()

