fisher.g.test {GeneTS} | R Documentation |
fisher.g.test
calculates the p-value(s) according to Fisher's
exact g test for one or more time series. This test is useful to detect hidden
periodicities of unknown frequency in a data set. For an application to
microarray data see Wichert, Fokianos, and Strimmer (2004).
fisher.g.test(x, ...)
x |
vector or matrix with time series data (one time series per column). |
... |
arguments passed to periodogram |
Fisher (1929) devised an exact procedure to test the null hypothesis of Gaussian
white noise against the alternative of an added deterministic periodic component
of unspecified frequency. The basic idea behind the test is to reject the
null hypothesis if the periodogram contains a value significantly larger
than the average value (cf. Brockwell and Davis, 1991).
This test is useful in the context of microarray genetic time series
analysis as a gene selection method - see Wichert, Fokianos and Strimmer (2004)
for more details. Note that in the special case of a constant time series
the p-value returned by fisher.g.test
is
exactly 1 (i.e. the null hypothesis is not rejected).
A vector of p-values (one for each time series). Multiple testing
may then be done using the the false discover rate approach
(function fdr.control
).
Konstantinos Fokianos (http://www.ucy.ac.cy/~fokianos/) and Korbinian Strimmer (http://www.statistik.lmu.de/~strimmer/).
Fisher, R.A. (1929). Tests of significance in harmonic analysis. Proc. Roy. Soc. A, 125, 54–59.
Brockwell, P.J., and Davis, R.A. (1991). Time Series: Theory and Methods (2nd ed). Springer Verlag. (the g-test is discussed in section 10.2).
Wichert, S., Fokianos, K., and Strimmer, K. (2004). Identifying periodically expressed transcripts in microarray time series data. Bioinformatics 20:5-20.
## Not run: # load GeneTS library library("GeneTS") # load data set data(caulobacter) # how many samples and and how many genes? dim(caulobacter) # p-values from Fisher's g test pval.caulobacter <- fisher.g.test(caulobacter) pval.caulobacter # test with FDR controlled at on the level 0.05 fdr.control(pval.caulobacter, Q = 0.05) ## End(Not run)