The files fdr.R and fdr.m are R (or Splus) and Matlab (or Octave) code for implementing the False Discovery Rate (FDR) methodology for multiple testing. In particular, the code allows one to increase the power of the FDR method by estimating the proportion of alternative hypotheses. This code accompanies the article: Ventura, V., C.J. Paciorek, and J.S. Risbey. 2004. Controlling the proportion of falsely-rejected hypotheses when conducting multiple tests with climatological data. Journal of Climate, in press. Also Carnegie Mellon University, Department of Statistics technical report 775 (www.stat.cmu.edu/tr/tr775/tr775.html). The code includes the main fdr function and four helper functions (fdr_basic,fdr_master,storey,prop_alt) which can be used on their own, but are mainly designed as internal functions to be called by fdr(). To use the code in R or Splus, download the file and source it in either language: > source('fdr.R') Then call the function fdr() with a vector of p-values as the first argument. Other arguments are optional and are described as comments within the code for the fdr() function. The function returns the indices of the significant tests. To use the code in Matlab, download the file to the directory from which you call Matlab, or place it in a directory in Matlab's path. Call the function with a vector of p-values and the FDR threshold (which we call the qlevel) you choose. Other arguments are optional and are described through the help utilities and as comments within the code for the function. The function returns the number of significant tests and the indices of the significant tests. The code is also usable in Octave, but you need to put each of the four helper functions in their own .m files. The code was written by Chris Paciorek and is distributed under the GNU General Public License, GPL version 2 or later. Please contact me at paciorek AT alumni.cmu.edu with bug reports or other comments.