An important goal of microarray studies is the detection of genes that show significant changes in observed expressions when two or more classes of biological samples such as treatment and control are compared. Using the c-fold rule, a gene is declared to be differentially expressed if its average expression level varies by more than a constant factor c between treatment and control (typically c = 2). While often used, however, this simple rule is not completely convincing. By modeling this filter, a binary variable is defined at the gene×experiment level, allowing for a more powerful treatment of the corresponding information. A gene-specific random term is introduced to control for both dependence among genes and variability with respect to the c-fold threshold. Inference is carried out via a two-level finite mixture model under a likelihood approach. Then, parameter estimates are also derived using the counting distribution under a Bayesian nonparametric approach which allows...