fdrTable: Computes false discovery rates for a series of p-value...

Description Usage Arguments Value Author(s) References Examples

Description

Given vectors of p-values from real data and data simulated under a null hypothesis, produces a table listing the number of null hypothesis rejections under a range of p-value cutoffs in real and simulated data.

Usage

1
fdrTable(real.p, sim.p)

Arguments

real.p

Vector of p-values in the real data.

sim.p

Vector of p-values in the simulated data.

Value

The function returns a dataframe listing p-value cutoffs, in steps of 0.1 on the decimal log scale, the number of null hypothesis rejections at each cutoff in real and simulated datasets, and their ratio (the false discovery rate).

Author(s)

Mikhail V. Matz

References

R. M. Wright, G. V. Aglyamova, E. Meyer and M. V. Matz (2015) Local and systemic gene expression responses to a white-syndrome-like disease in a reef-bulding coral, Acropora hyacinthus.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
dds = makeExampleDESeqDataSet(betaSD=1, n=100)
dds = DESeq(dds)
sims = simulateCounts(dds)
sims = DESeq(sims)
res = results(dds)
sim.res=results(sims)

# how similar is the simulation to real data? 
plot(sizeFactors(sims)~sizeFactors(dds))
plot(log(dispersions(sims),10)~log(dispersions(dds),10))

# computing and plotting empirical FDR
fdrt = fdrTable(res$pvalue,sim.res$pvalue)
fdrBiCurve(fdrt,maxLogP=4,main="DEG discovery rates")
efdr = empiricalFDR(fdrt,plot=TRUE,main="False discovery rate")

# how many genes pass empirical 0.1 FDR cutoff?
table(res$pvalue<efdr)

# how many genes pass multiplicity-corrected 0.1 FDR cutoff?
table(res$padj<0.1)

empiricalFDR.DESeq2 documentation built on May 2, 2019, 1:10 p.m.