[med-svn] [r-bioc-limma] 02/06: New upstream version 3.32.10+dfsg

Andreas Tille tille at debian.org
Sun Oct 22 17:16:49 UTC 2017


This is an automated email from the git hooks/post-receive script.

tille pushed a commit to branch master
in repository r-bioc-limma.

commit c3d48d4e1cccc0335eda31c82aa10be974f3fd22
Author: Andreas Tille <tille at debian.org>
Date:   Sun Oct 22 18:46:40 2017 +0200

    New upstream version 3.32.10+dfsg
---
 DESCRIPTION             |   6 +--
 R/beadCountWeights.R    |  45 ++++++++++++++-------
 R/diffSplice.R          | 105 ------------------------------------------------
 R/plotSplice.R          |  65 ++++++++++++++++++++++++++++++
 R/topSplice.R           |  57 ++++++++++++++++++++++++++
 build/vignette.rds      | Bin 231 -> 231 bytes
 inst/doc/changelog.txt  |  13 +++++-
 inst/doc/intro.pdf      | Bin 43301 -> 43301 bytes
 man/beadCountWeights.Rd |  28 ++++++++-----
 man/ebayes.Rd           |  20 +++++----
 man/topSplice.Rd        |  12 ++++--
 11 files changed, 207 insertions(+), 144 deletions(-)

diff --git a/DESCRIPTION b/DESCRIPTION
index b7a20e1..8f65beb 100755
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -1,6 +1,6 @@
 Package: limma
-Version: 3.32.7
-Date: 2017-09-21
+Version: 3.32.10
+Date: 2017-10-12
 Title: Linear Models for Microarray Data
 Description: Data analysis, linear models and differential expression for microarray data.
 Author: Gordon Smyth [cre,aut], Yifang Hu [ctb], Matthew Ritchie [ctb], Jeremy Silver [ctb], James Wettenhall [ctb], Davis McCarthy [ctb], Di Wu [ctb], Wei Shi [ctb], Belinda Phipson [ctb], Aaron Lun [ctb], Natalie Thorne [ctb], Alicia Oshlack [ctb], Carolyn de Graaf [ctb], Yunshun Chen [ctb], Mette Langaas [ctb], Egil Ferkingstad [ctb], Marcus Davy [ctb], Francois Pepin [ctb], Dongseok Choi [ctb]
@@ -21,4 +21,4 @@ biocViews: ExonArray, GeneExpression, Transcription,
         MultipleComparison, Normalization, Preprocessing,
         QualityControl
 NeedsCompilation: yes
-Packaged: 2017-09-21 22:27:18 UTC; biocbuild
+Packaged: 2017-10-12 22:15:31 UTC; biocbuild
diff --git a/R/beadCountWeights.R b/R/beadCountWeights.R
index 73d7de1..428d482 100644
--- a/R/beadCountWeights.R
+++ b/R/beadCountWeights.R
@@ -1,34 +1,51 @@
 beadCountWeights <- function(y, x, design=NULL, bead.stdev=NULL, bead.stderr=NULL, nbeads=NULL, array.cv=TRUE, scale=FALSE)
 #	Compute weights for BeadChips based on bead-level counts and standard deviations
 #	Charity Law and Gordon Smyth
-#	4 August 2010. Last modified 19 Dec 2013.
+#	Created 4 August 2010. Last modified 4 Oct 2017.
 {
+#	Matrix of normalized expression values
 	E <- as.matrix(y)
+	P <- nrow(E)
+	A <- ncol(E)
+
+#	Matrix of non-normalized expression values on unlog scale
 	E.raw <- as.matrix(x)
+	if(nrow(E.raw) != P) stop("dimensions don't match")
+	if(ncol(E.raw) != A) stop("dimensions don't match")
+
+#	Check design matrix
+	if(is.null(design)) design <- y$design
+	if(is.null(design))
+		design <- matrix(1,A,1)
+	else {
+		design <- as.matrix(design)
+		if(mode(design) != "numeric") stop("design must be a numeric matrix")
+		if(nrow(design) != A) stop("row dimension of design doesn't match column dimension of data object")
+	}
+
+#	Number of beads per probe
 	if(is.null(nbeads)) {
 		nbeads <- y$other$Avg_NBEADS
-		if(is.null(nbeads)) stop("NBEADS not found in data object")
+		if(is.null(nbeads)) stop("nbeads not provided and Avg_NBEADS not found in data object")
 	}	
+	if(nrow(nbeads) != P) stop("dimensions don't match")
+	if(ncol(nbeads) != A) stop("dimensions don't match")
+
+#	Standard deviation of beads per probe
 	if(is.null(bead.stdev)) {
-		if (is.null(bead.stderr)) {
-			if (is.null(y$other$BEAD_STDEV)) {
-				y$other$BEAD_STDEV <- y$other$BEAD_STDERR*sqrt(nbeads)
+		if(is.null(bead.stderr)) {
+			if(is.null(y$other$BEAD_STDEV)) {
+				if(is.null(y$other$BEAD_STDERR)) stop("Neither bead.stdev nor bead.stderr were provided (and neither could be found in the data object y). At least one is required.")
+				bead.stdev <- y$other$BEAD_STDERR*sqrt(nbeads)
 			} else {
-			bead.stdev <- y$other$BEAD_STDEV
+				bead.stdev <- y$other$BEAD_STDEV
 			}
 		} else {
 			bead.stdev <- bead.stderr*sqrt(nbeads)
 		}
-	if(is.null(bead.stdev)) stop("BEAD_STDEV and BEAD_STDERR are missing. At least one is required.")	
-	}
-	P <- nrow(E)
-	A <- ncol(E)
-	if(nrow(E.raw) != P) stop("dimensions don't match")
-	if(ncol(E.raw) != A) stop("dimensions don't match")
+	}
 	if(nrow(bead.stdev) != P) stop("dimensions don't match")
 	if(ncol(bead.stdev) != A) stop("dimensions don't match")
-	if(nrow(nbeads) != P) stop("dimensions don't match")
-	if(ncol(nbeads) != A) stop("dimensions don't match")
 
 #	Coefficient of variation of bead-level observations
 #	Array-specific or constant. 
diff --git a/R/diffSplice.R b/R/diffSplice.R
index 95745f5..c44fe17 100644
--- a/R/diffSplice.R
+++ b/R/diffSplice.R
@@ -145,108 +145,3 @@ diffSplice <- function(fit,geneid,exonid=NULL,robust=FALSE,verbose=TRUE)
 
 	out
 }
-
-topSplice <- function(fit, coef=ncol(fit), test="simes", number=10, FDR=1)
-#	Collate diffSplice results into data.frame, ordered from most significant at top
-#	Gordon Smyth
-#	Created 18 Dec 2013.  Last modified 18 Aug 2014.
-{
-	coef <- coef[1]
-	test <- match.arg(test,c("simes","F","f","t"))
-	if(test=="f") test <- "F"
-	switch(test,
-	"t" = {
-		number <- min(number,nrow(fit$coefficients))
-		P <- fit$p.value[,coef]
-		BH <- p.adjust(P, method="BH")
-		if(FDR<1) number <- min(number,sum(BH<FDR))
-		o <- order(P)[1:number]
-		data.frame(fit$genes[o,,drop=FALSE],logFC=fit$coefficients[o,coef],t=fit$t[o,coef],P.Value=P[o],FDR=BH[o])
-	},
-	F = {
-		number <- min(number,nrow(fit$gene.F))
-		P <- fit$gene.F.p.value[,coef]
-		BH <- p.adjust(P, method="BH")
-		if(FDR<1) number <- min(number,sum(BH<FDR))
-		o <- order(P)[1:number]
-		data.frame(fit$gene.genes[o,,drop=FALSE],F=fit$gene.F[o,coef],P.Value=P[o],FDR=BH[o])
-	},
-	simes = {
-		number <- min(number,nrow(fit$gene.F))
-		P <- fit$gene.simes.p.value[,coef]
-		BH <- p.adjust(P, method="BH")
-		if(FDR<1) number <- min(number,sum(BH<FDR))
-		o <- order(P)[1:number]
-		data.frame(fit$gene.genes[o,,drop=FALSE],P.Value=P[o],FDR=BH[o])
-	}
-	)
-}
-
-plotSplice <- function(fit, coef=ncol(fit), geneid=NULL, genecolname=NULL, rank=1L, FDR = 0.05)
-#	Plot exons of chosen gene
-#	fit is output from diffSplice
-#	Gordon Smyth and Yifang Hu
-#	Created 3 Jan 2014.  Last modified 7 October 2014.
-{
-	if(is.null(genecolname)) 
-		genecolname <- fit$genecolname
-	else
-		genecolname <- as.character(genecolname)
-
-	if(is.null(geneid)) {
-#		Find gene from specified rank 
-		if(rank==1L)
-			i <- which.min(fit$gene.F.p.value[,coef])
-		else
-			i <- order(fit$gene.F.p.value[,coef])[rank]
-		geneid <- paste(fit$gene.genes[i,genecolname], collapse = ".")
-	} else {
-#		Find gene from specified name
-		geneid <- as.character(geneid)
-		i <- which(fit$gene.genes[,genecolname]==geneid)[1]
-		if(!length(i)) stop(paste("geneid",geneid,"not found"))
-	}
-
-#	Row numbers containing exons
-	j <- fit$gene.firstexon[i]:fit$gene.lastexon[i]
-
-	exoncolname <- fit$exoncolname
-
-#	Get strand if possible		
-	strcol <- grepl("strand", colnames(fit$gene.genes), ignore.case = TRUE)
-	if(any(strcol)) geneid <- paste0(geneid, " (", as.character(fit$gene.genes[i, strcol])[1], ")")
-
-	if(is.null(exoncolname)) {
-
-		plot(fit$coefficients[j,coef], xlab = "Exon", ylab = "logFC (this exon vs rest)", main = geneid, type = "b")
-
-	} else {
-
-		exon.id <- fit$genes[j, exoncolname]
-		xlab <- paste("Exon", exoncolname, sep = " ")
-
-		plot(fit$coefficients[j, coef], xlab = "", ylab = "logFC (this exon vs rest)", main = geneid,type = "b", xaxt = "n")
-		axis(1, at = 1:length(j), labels = exon.id, las = 2, cex.axis = 0.5)
-		mtext(xlab, side = 1, padj = 5.2)
-
-#		Mark the topSpliced exons
-		top <- topSplice(fit, coef = coef, number = Inf, test = "t", FDR = FDR)
-		m <- which(top[,genecolname] %in% fit$gene.genes[i,genecolname])
-		if(length(m) > 0){
-			if(length(m) == 1)
-				cex <- 1.5
-			else {
-				abs.fdr <- abs(log10(top$FDR[m]))
-				from <- range(abs.fdr)
-				to <- c(1,2)
-				cex <- (abs.fdr - from[1])/diff(from) * diff(to) + to[1]
-			}	
-			mark <- match(top[m, exoncolname], exon.id)
-			points((1:length(j))[mark], fit$coefficients[j[mark], coef], col = "red", pch = 16, cex = cex)
-		}
-
-	}
-
-	abline(h=0,lty=2)
-	invisible()
-}
diff --git a/R/plotSplice.R b/R/plotSplice.R
new file mode 100644
index 0000000..96d401f
--- /dev/null
+++ b/R/plotSplice.R
@@ -0,0 +1,65 @@
+plotSplice <- function(fit, coef=ncol(fit), geneid=NULL, genecolname=NULL, rank=1L, FDR=0.05)
+#	Plot exons of chosen gene
+#	fit is output from diffSplice
+#	Gordon Smyth, Yifang Hu and Yunshun Chen
+#	Created 3 Jan 2014.  Last modified 28 Sep 2017.
+{
+	if(is.null(genecolname)) 
+		genecolname <- fit$genecolname
+	else
+		genecolname <- as.character(genecolname)
+
+	if(is.null(geneid)) {
+#		Find gene from specified rank 
+		if(rank==1L)
+			i <- which.min(fit$gene.F.p.value[,coef])
+		else
+			i <- order(fit$gene.F.p.value[,coef])[rank]
+		geneid <- paste(fit$gene.genes[i,genecolname], collapse=".")
+	} else {
+#		Find gene from specified name
+		geneid <- as.character(geneid)
+		i <- which(fit$gene.genes[,genecolname]==geneid)[1]
+		if(!length(i)) stop(paste("geneid",geneid,"not found"))
+	}
+
+#	Row numbers containing exons
+	j <- fit$gene.firstexon[i]:fit$gene.lastexon[i]
+
+	exoncolname <- fit$exoncolname
+
+#	Get strand if possible		
+	strcol <- grepl("strand", colnames(fit$gene.genes), ignore.case=TRUE)
+	if(any(strcol)) geneid <- paste0(geneid, " (", as.character(fit$gene.genes[i, strcol])[1], ")")
+
+	if(is.null(exoncolname)) {
+		plot(fit$coefficients[j, coef], xlab="Exon", ylab="logFC (this exon vs rest)", main=geneid, type="b")
+	} else {
+		exon.id <- fit$genes[j, exoncolname]
+		xlab <- paste("Exon", exoncolname, sep=" ")
+		plot(fit$coefficients[j, coef], xlab="", ylab="logFC (this exon vs rest)", main=geneid, type="b", xaxt="n")
+		axis(1, at=1:length(j), labels=exon.id, las=2, cex.axis=0.5)
+		mtext(xlab, side=1, padj=5.2)
+	}
+
+#	Mark the topSpliced exons
+	top <- topSplice(fit, coef=coef, number=Inf, test="t", sort.by="none")
+	m <- which(top[, genecolname] %in% fit$gene.genes[i, genecolname])
+	fdr <- top$FDR[m]
+	sig <- fdr < FDR
+	if(any(sig)){
+		fdr.sig <- fdr[sig]
+		if(length(unique(fdr.sig))==1)
+			cex <- 1.5
+		else {
+			abs.fdr <- abs(log10(fdr.sig))
+			from <- range(abs.fdr)
+			to <- c(1,2)
+			cex <- (abs.fdr - from[1])/diff(from) * diff(to) + to[1]
+		}
+		points((1:length(j))[sig], fit$coefficients[j[sig], coef], col="red", pch=16, cex=cex)
+	}
+
+	abline(h=0,lty=2)
+	invisible()
+}
diff --git a/R/topSplice.R b/R/topSplice.R
new file mode 100644
index 0000000..6d72674
--- /dev/null
+++ b/R/topSplice.R
@@ -0,0 +1,57 @@
+topSplice <- function(fit, coef=ncol(fit), test="simes", number=10L, FDR=1, sort.by="p")
+#	Collate diffSplice results into data.frame, ordered from most significant at top
+#	Gordon Smyth and Yunshun Chen
+#	Created 18 Dec 2013.  Last modified 29 Sep 2017.
+{
+#	Check fit is as produced by diffSplice
+	if(is.null(fit$gene.genes$NExons)) stop("fit should be fit object produced by diffSplice")
+
+#	Can only specify one coefficient
+	coef <- coef[1]
+
+	test <- match.arg(test,choices=c("simes","F","f","t"))
+	if(test=="f") test <- "F"
+
+	sort.by <- match.arg(sort.by,choices=c("p","none","logFC","NExons"))
+	if(sort.by=="logFC" & test!="t") stop("Sorting by logFC only available with Simes test")
+	if(sort.by=="NExons" & test=="t") stop("Sorting by NExons only available with gene-level tests")
+
+#	Assemble data.frame of results for this coef
+	switch(test,
+	t = {
+		out <- fit$genes
+		out$logFC <- as.matrix(fit$coefficients)[,coef]
+		out$t <- as.matrix(fit$t)[,coef]
+		out$P.Value <- as.matrix(fit$p.value)[,coef]
+	},
+
+	F = {
+		out <- fit$gene.genes
+		out$F <- as.matrix(fit$gene.F)[,coef]
+		out$P.Value <- as.matrix(fit$gene.F.p.value)[,coef]
+	},
+
+	simes = {
+		out <- fit$gene.genes
+		out$P.Value <- as.matrix(fit$gene.simes.p.value)[,coef]
+	}
+	)
+	out$FDR <- p.adjust(out$P.Value, method="BH")
+
+#	Reduce to significant genes
+	if(FDR<1) out <- out[out$FDR <= FDR,]
+
+#	Is the number of rows requested more than number available?
+	number <- min(number, nrow(out))
+	if(number <= 1L) return(out)
+
+#	Sort rows
+	o <- switch(sort.by,
+			p = order(out$P.Value, decreasing=FALSE),
+			logFC = order(abs(out$logFC), decreasing=TRUE),
+			NExons = order(out$NExons, -out$P.Value, decreasing=TRUE),
+			none = 1:nrow(out)
+		)
+	o <- o[1:number]
+	out[o,]
+}
diff --git a/build/vignette.rds b/build/vignette.rds
index 18bda60..42a8011 100644
Binary files a/build/vignette.rds and b/build/vignette.rds differ
diff --git a/inst/doc/changelog.txt b/inst/doc/changelog.txt
index 9296fbd..2ecd58a 100755
--- a/inst/doc/changelog.txt
+++ b/inst/doc/changelog.txt
@@ -1,5 +1,16 @@
+ 4 Oct 2017: limma 3.32.8
+
+- Bug fixes for beadCountWeights(). Default is now set correct for
+  'design' and the function now works correctly when 'y' is an EList
+  object contain bead standard errors but not standard deviations.
+
+- Bug fixes for plotSplice() which, in some circumstances, was not
+  highlight significant exons.
+
+- New argument 'sort.by' for topSplice().
+
 21 Sep 2017: limma 3.32.7
- 
+
 - volcanoplot() didn't work with MArrayLM objects produced by
   treat(). Now fixed.
 
diff --git a/inst/doc/intro.pdf b/inst/doc/intro.pdf
index aa43f6b..5ed4444 100644
Binary files a/inst/doc/intro.pdf and b/inst/doc/intro.pdf differ
diff --git a/man/beadCountWeights.Rd b/man/beadCountWeights.Rd
index 2bbbc7c..c165afa 100644
--- a/man/beadCountWeights.Rd
+++ b/man/beadCountWeights.Rd
@@ -13,14 +13,14 @@ beadCountWeights(y, x, design = NULL, bead.stdev = NULL, bead.stderr = NULL,
 }
 
 \arguments{
- \item{y}{normalized log2-expression values.}
- \item{x}{raw expression values, with the same dimensions as \code{y}.}
+ \item{y}{an \code{"EList"} object or a numeric matrix containing normalized log2-expression values.}
+ \item{x}{an \code{"EListRaw"} object or a numeric matrix of raw expression values, with same dimensions as \code{y}.}
  \item{design}{the design matrix of the microarray experiment, with rows
            corresponding to arrays and columns to coefficients to be
-           estimated.  Defaults to the unit vector meaning that the
+           estimated.  Defaults to \code{y$design} or, if that is \code{NULL}, then to a column of ones meaning that the
            arrays are treated as replicates.}
- \item{bead.stdev}{numeric matrix containing bead-level standard deviations.}
- \item{bead.stderr}{numeric matrix containing bead-level standard errors.}
+ \item{bead.stdev}{numeric matrix of bead-level standard deviations.}
+ \item{bead.stderr}{numeric matrix of bead-level standard errors. Not required if \code{bead.stdev} is set.}
  \item{nbeads}{numeric matrix containing number of beads.}
  \item{array.cv}{logical, should technical variation for each observation be calculated from a constant or array-specific coefficient of variation?  The default is to use array-specific coefficients of variation.}
  \item{scale}{logical, should weights be scaled so that the average weight size is the mean of the inverse technical variance along a probe? By default, weights are scaled so that the average weight size along a probe is 1.}
@@ -44,7 +44,11 @@ Coefficients of variation are calculated using raw expression values.
 
 The biological variance for each probe across the arrays are estimated using a Newton iteration, with the assumption that the total residual deviance for each probe from \code{lmFit} is inversely proportional to the sum of the technical variance and biological variance. 
 
-If any of the arguments \code{design}, \code{bead.stdev}, \code{bead.stderr} or \code{nbeads} are set explicitly in the call they will over-ride the slots or components in the data \code{object}. The argument \code{design} does not normally need to be set in the call but will be extracted from the data \code{object} if available. If arguments \code{bead.stdev}, \code{bead.stderr} and \code{nbeads} are not set explicitly in the call, it is necessary that they are available for extraction  [...]
+Only one of \code{bead.stdev} or \code{bead.stderr} needs to be set.
+If \code{bead.stdev} is not provided, then it will be computed as \code{bead.stderr * sqrt(nbeads)}.
+
+If arguments \code{bead.stdev} and \code{nbeads} are not set explicitly in the call, then they will be extracted from\code{y$other$BEAD_STDEV} and \code{y$other$Avg_NBEADS}.
+An \code{EList} object containing these components can be created by \code{read.idat} or \code{read.ilmn}, see the example code below.
 }
 
 \value{
@@ -53,8 +57,8 @@ A list object with the following components:
 \item{weights}{numeric matrix of bead number weights}
 \item{cv.constant}{numeric value of constant bead-level coefficient of variation}
 \item{cv.array}{numeric vector of array-specific bead-level coefficient of variation}
-\item{var.technical}{numeric matrix of technical variance}
-\item{var.biological}{numeric vector of biological variance}
+\item{var.technical}{numeric matrix of technical variances}
+\item{var.biological}{numeric vector of biological variances}
 }
 
 \references{
@@ -68,11 +72,11 @@ PhD Thesis. University of Melbourne, Australia.
 
 \examples{
 \dontrun{
-ps <- read.ilmn(files="probesummaryprofile.txt",
+z <- read.ilmn(files="probesummaryprofile.txt",
      ctrfiles="controlprobesummary.txt",
      other.columns=c("BEAD_STDEV","Avg_NBEADS"))
-y <- neqc(ps)
-x <- ps[ps$genes$Status=="regular",]
+y <- neqc(z)
+x <- z[z$genes$Status=="regular",]
 bcw <- beadCountWeights(y,x,design)
 fit <- lmFit(y,design,weights=bcw$weights)
 fit <- eBayes(fit)
@@ -80,5 +84,7 @@ fit <- eBayes(fit)
 }
 
 \seealso{
+\code{\link{read.ilmn}}, \code{\link{read.idat}}, \code{\link{neqc}}.
+
 An overview of linear model functions in limma is given by \link{06.LinearModels}.
 }
diff --git a/man/ebayes.Rd b/man/ebayes.Rd
index 7959730..e1b1261 100755
--- a/man/ebayes.Rd
+++ b/man/ebayes.Rd
@@ -108,25 +108,31 @@ Smyth, G. K. (2004). Linear models and empirical Bayes methods for assessing dif
 
 #  Simulate gene expression data,
 #  6 microarrays and 100 genes with one gene differentially expressed
-set.seed(2004); invisible(runif(100))
-M <- matrix(rnorm(100*6,sd=0.3),100,6)
-M[1,] <- M[1,] + 1
-fit <- lmFit(M)
+set.seed(2016)
+sigma2 <- 0.05 / rchisq(100, df=10) * 10
+y <- matrix(rnorm(100*6,sd=sqrt(sigma2)),100,6)
+design <- cbind(Intercept=1,Group=c(0,0,0,1,1,1))
+y[1,4:6] <- y[1,4:6] + 1
+fit <- lmFit(y,design)
 
 #  Moderated t-statistic
 fit <- eBayes(fit)
-topTable(fit)
+topTable(fit,coef=2)
 
 #  Ordinary t-statistic
-ordinary.t <- fit$coef / fit$stdev.unscaled / fit$sigma
+ordinary.t <- fit$coef[,2] / fit$stdev.unscaled[,2] / fit$sigma
 
 #  Q-Q plots of t statistics
 #  Points off the line may be differentially expressed
 par(mfrow=c(1,2))
 qqt(ordinary.t, df=fit$df.residual, main="Ordinary t")
 abline(0,1)
-qqt(fit$t, df=fit$df.total,main="Moderated t")
+qqt(fit$t[,2], df=fit$df.total,main="Moderated t")
 abline(0,1)
 par(mfrow=c(1,1))
+
+# Treat
+tfit <- treat(fit,lfc=log2(1.1))
+topTreat(tfit,coef=2)
 }
 \keyword{htest}
diff --git a/man/topSplice.Rd b/man/topSplice.Rd
index 509996d..9d4342e 100644
--- a/man/topSplice.Rd
+++ b/man/topSplice.Rd
@@ -5,17 +5,23 @@
 Top table ranking the most differentially spliced genes or exons.
 }
 \usage{
-topSplice(fit, coef=ncol(fit), test="simes", number=10, FDR=1)
+topSplice(fit, coef = ncol(fit), test = "simes", number = 10, FDR=1, sort.by = "p")
 }
 \arguments{
   \item{fit}{\code{MArrayLM} fit object produced by \code{diffSplice}.}
   \item{coef}{the coefficient (column) of fit for which differentially splicing is assessed.}
-  \item{test}{character string, possible values are \code{"simes"}, \code{"F"} or \code{"t"}.
+  \item{test}{character string specifying which statistical test to apply.
+    Possible values are \code{"simes"}, \code{"F"} or \code{"t"}.
     \code{"F"} gives F-tests for each gene.
     \code{"t"} gives t-tests for each exon.
-    \code{"simes"} gives genewise p-values derived from the t-tests after Simes adjustment for each gene.}
+    \code{"simes"} gives genewise p-values derived from the t-tests after Simes adjustment for each gene.
+  }
   \item{number}{integer, maximum number of rows to output.}
   \item{FDR}{numeric, only show exons or genes with false discovery rate less than this cutoff.}
+  \item{sort.by}{character string specifying which column to sort results by.
+    Possible values for \code{"p"}, \code{"logFC"}, \code{"NExons"} or \code{"none"}.
+    \code{"logFC"} is only available if \code{test="t"} and \code{"NExons"} is only available if \code{test="simes"} or \code{test="F"}.
+  }
 }
 
 \details{

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/r-bioc-limma.git



More information about the debian-med-commit mailing list