% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/extractTestingResults.R
\name{extractTestingResults}
\alias{extractTestingResults}
\title{Extract Results From Moderated t-tests}
\usage{
extractTestingResults(
  stat,
  compNo = 1,
  statTy = "BH",
  thrsh = 0.05,
  FCthrs = 1.5,
  annotCol = c("Accession", "EntryName", "GeneName", "ProteinName"),
  nSign = 6,
  addTy = c("allMeans"),
  sortBy = NULL,
  rowNames = TRUE,
  filename = NULL,
  fileTy = "csvUS",
  silent = FALSE,
  debug = FALSE,
  callFrom = NULL
)
}
\arguments{
\item{stat}{('MArrayLM'-object or list) designed for the output from \code{moderTest2grp} or \code{moderTestXgrp}}

\item{compNo}{(integer) the comparison name/number/index to be used}

\item{statTy}{(character) the multiple-testing correction type to be considered when looking for significant changes  with threshold \code{thrsh} (depends on which have been run initially with \code{moderTest2grp} or \code{moderTestXgrp})}

\item{thrsh}{(numeric) the threshold to be applied on \code{statTy} for the result of the statistcal testing (after multiple testing correction)}

\item{FCthrs}{(numeric) Fold-Change threshold given as Fold-change and NOT log2(FC), default at 1.5 (for filtering at M-value =0.585)}

\item{annotCol}{(character) column-names from the annotation to be included}

\item{nSign}{(integer) number of significant digits whe returning results}

\item{addTy}{(character) additional groups of columns to add ("allMeans", "all" or "slim") in addition;
if \code{addTy="slim"} only the FDR- and FC-columns directly concerned will be extracted/displayed, column-names will be trimmed to max 26 characters;
if \code{addTy="slim2"} only the FDR- and FC-columns directly concerned will be extracted/displayed, FDR- and FC- columns will have generic names (without indicating the comparison), all text will be trimmed to max 38 characters;
if \code{addTy="slim3"} like slim2 but without ProteinName}

\item{sortBy}{(character or logical) optional sorting of results, must specify a column-name of output, if \code{sortBy=TRUE} the fisrt column of argument \code{statTy} will be used}

\item{rowNames}{(character or logical) optional custom rownames, or if \code{rowNames=FALSE} no rownames}

\item{filename}{(character) optional (path and) file-name for exporting results to csv-file}

\item{fileTy}{(character) file-type to be used with argument \code{filename}, may be 'csvEur' or 'csvUS'}

\item{silent}{(logical) suppress messages}

\item{debug}{(logical) display additional messages for debugging}

\item{callFrom}{(character) allow easier tracking of messages produced}
}
\value{
This function returns a data.frame or matrix (if no annotation added) with values (and annotation) conform to fiter criteria
}
\description{
This function allows convenient access to results produced using the functions \code{\link[wrMisc]{moderTestXgrp}} or \code{\link[wrMisc]{moderTest2grp}}.
The user can define the threshold and which type of multiple testing correction should be used
 (as long as the multiple testing correction method cited was actually performed as part of testing).
}
\details{
One single given comparison has to be selected by the user via argument \code{compNo}, multiple options exist :
1) The use may give and index which refers to the i'th comparison stored in the object \code{stat}
2) It may be more convenient to directy cite a goven comparison (eg \code{compNo=c("B-C")} in the examples below). 
  Such comparions may be 'inversed' to the ones orginally performed, the M-values will be adjusted accordingly (eg \code{compNo=c("C-B")})
3) It is also possible to give a vector of 2 integers which will be uses as index to the levels of the initial group-assignment, beware that levels are sorted.

The number of columns returned can be modulated using the argument \code{addTy}. 
\code{addTy='slim'} gives the fewer columns, only FDR and FC of current comparison specified in argument \code{compNo} will be returned.
With \code{addTy='slim2'} the column-names for statistical testing and log Fold-Change will be generic, all colnames will be trimmed to max 25 characters
\code{addTy='all'} results in a rather exaustive collection of columns (including annotation data, if present), 
The option \code{addTy='slim3'} is like slim2 but without column ProteinName
while default \code{addTy='allMeans'} gives a compromise for the number of columns returned.
}
\examples{
grp <- factor(rep(LETTERS[4:2],c(2,3,3)))
set.seed(2017); t8 <- matrix(round(rnorm(208*8,10,0.4),2), ncol=8,
  dimnames=list(paste(letters[],rep(1:8,each=26),sep=""), paste(grp,c(1:2,1:3,1:3),sep="")))
t8[3:6,1:2] <- t8[3:6,1:2] +3                    # augment lines 3:6 (c-f) 
t8[5:8,c(1:2,6:8)] <- t8[5:8,c(1:2,6:8)] -1.5    # lower lines 
t8[6:7,3:5] <- t8[6:7,3:5] +2.2                  # augment lines 
## expect to find C/A in c,d,g, (h)
## expect to find C/D in c,d,e,f
## expect to find A/D in f,g,(h) 
library(wrMisc)     # for testing we'll use this package
test8 <- moderTestXgrp(t8, grp) 
extractTestingResults(test8)
extractTestingResults(test8, compNo=c("B-C"))

extractTestingResults(test8, addTy="all")
extractTestingResults(test8, addTy="slim")
}
\seealso{
\code{\link{testRobustToNAimputation}}, \code{\link[wrMisc]{moderTestXgrp}} or \code{\link[wrMisc]{moderTest2grp}}
}
