qtlFDR {MetaNetwork}R Documentation

Estimate QTL thresholds for false discovery rate (FDR)

Description

Calculate thresholds to control the false discovery rate in QTL analysis. At given fdrThres(desired proportion of false positives), estimate the corresponding qtlThreshold (qtlThres). And/or at given qtlThres (desired treshold for significance), estimate the corresponding proportion of false positives (fdrThres).

Usage

qtlFDR <- function( qtlProfiles, fdrThres=0.05, qtlThres=NULL ) 

Arguments

qtlProfiles matrix of QTL mapping of traits (rownames) to markers (columnnames), as -log_{10}(p) values.
See qtlProfiles example data.
fdrThres the desired qvalue proportion of false positives incured (called the false discovery rate). Default is 0.05.
See qvalue package.
qtlThres numeric -log_{10}(p) desired threshold value for significant QTLs.
See qtlThreshold function.

Value

A matrix with three columns and two rows:

c: qValue proportion of false positives (fdr).
c: pValue 10^{-1*qtlThres} transformation of qtlThres/qtlProfiles to match qvalue package.
c: -log10P -log_{10}(p) estimation of qtlThres.
r: fdrThres a pValue and -log_{10}(p) qtlThres for the given fdrThres.
r: qtlThres a qValue (fdr) and pValue for the given qtlThres.

Example:
qValue pValue -log10P
[1,] 0.050000000 0.0809722708 1.091664
[2,] 0.001344755 0.0006845554 3.164591
If fdrThres or qtlThres is NULL then the respective rows are ommitted.

Author(s)

Jingyuan Fu <j.fu@rug.nl>, Morris Swertz <m.a.swertz@rug.nl>, Ritsert Jansen <r.c.jansen@rug.nl>

Source

Storey, J. D. & Tibshirani, R. Statistical significance for genomewide studies. Proc. Natl. Acd. Sci. USA 100, 9440-9445 (2003).

References

Fu J, Swertz MA, Keurentjes JJB, Jansen RC. MetaNetwork: a computational tool for the genetic study of metabolism. Nature Protocols (2007).

http://gbic.biol.rug.nl/supplementary/2007/MetaNetwork

See Also

Use qtlThreshold to estimate an QTL threshold based on simulation.
Use qtlMapTwoPart to calculate qtlProfiles.
Use MetaNetwork for automated application of this function as part a genetic analysis protocol on metabolites.

Examples

## load the example data provided with this package                         
data(markers)   
data(genotypes)
data(traits)                                                       
                                             
##OR: load your own data                     
#markers        <- loadData("markers.csv")
#genotypes      <- loadData("genotypes.csv")
#traits         <- loadData("traits.csv")  
                                             
##calculate the two part qtl
qtlProfiles     <- qtlMapTwoPart(genotypes=genotypes, traits=traits, spike=4)
  
##set the qtl threshold
qtlThres        <- 3.79

##OR: estimate the threshold yourself
#qtlThres       <- qtlThreshold(genotypes, traits, spike=4)

##estimate FDR
qtlFDR          <- qtlFDR(qtlProfiles, fdrThres=0.05, qtlThres=qtlThres)

##show FDR for both fdrThres of 0.05 and qtlThres of qtlThres
qtlFDR

[Package MetaNetwork version 1.0-0 Index]