A gene appears in a results table with a raw p-value and a fold-change estimate, but its adjusted p-value is missing. That is not automatically a broken export. It may record a filtering decision about which genes entered the multiple-testing adjustment.
The useful task is to reconstruct that decision without treating missing values as proof of no biological effect. We will compare two explicitly defined testing families, then distinguish filtering from selection based on a preferred result. The gene names and numerical tables are fictional.
Continue from The Gold Standard of Bioinformatics, within The Gold Standard of Education: learning that transfers into life and How X Works.
Choose the question you need to resolve
Build the explanation · Chapters 1–2. Define the quantities and read the measurement chain.
Work through the changing case · Chapters 3–5. Calculate, compare and identify what the result leaves unresolved.
Check and continue · Chapters 6–8. Try new conditions, read the FAQs and choose connected guides.
Chapter contents · Transfer checks with explained answers · Return to the Bioinformatics subject guide
Chapter contents
Build the explanation
Work through the changing case
3. Calculate eight tests and then a declared retained set
4. Distinguish independent filtering from choosing the winners
Check and continue
6. Challenge the conclusion under a changed context
A gene-expression table combines several kinds of information. A count summary describes observed sequence assignments. A fold change estimates a comparison under a model. A raw p-value assesses a test statistic relative to a null model. An adjusted p-value belongs to a multiple-testing procedure applied to a defined family.
Those stages need not be available for every row. A row can remain in an exported table even when it did not receive an adjusted value. Keeping the row preserves useful information about why it was not declared a discovery.
For a familiar null hypothesis, imagine no condition-related expression difference under the stated design. A small raw p-value alone does not tell us how many hypotheses were examined, whether the model fits or whether an effect is large enough to matter biologically.
Begin by identifying the comparison, biological replication, feature identifiers and processing version. Filtering cannot repair a confounded design or turn repeated measurements of the same biological sample into independent replication.
The Benjamini–Hochberg procedure, abbreviated BH, uses the ordered p-values and the number of hypotheses in the adjustment family. For m ordered values p(1) ≤ … ≤ p(m), compare p(i) with iq/m, where q is the chosen false-discovery-rate level. Find the largest passing rank and reject all hypotheses up to that rank.
BH adjusted values can be calculated by taking the cumulative minimum, from the largest rank backwards, of mp(i)/i, capped at one. The backwards step matters: adjusted values should not decrease as ordered raw p-values increase.
Under appropriate validity and dependence conditions, the procedure controls the expected false-discovery proportion, with that proportion taken as zero when there are no rejections. It does not promise that exactly q of any particular list is false, or give each listed gene a q probability of being false.
Changing the family can change adjusted values while leaving the raw evidence for a given gene unchanged. That arithmetic is why the family definition belongs in the report, beside the comparison and threshold.
Consider eight ordered fictional p-values: 0.001, 0.008, 0.018, 0.040, 0.250, 0.500, 0.700 and 0.900. At q = 0.05, the third BH threshold is 3 × 0.05/8 = 0.01875, which the third value passes. No higher rank passes. The full-family procedure therefore declares G1, G2 and G3 discoveries.
Now suppose an independently justified filter retains G1–G4 before adjustment and removes G5–G8. For the four retained tests, the BH thresholds are 0.0125, 0.025, 0.0375 and 0.05. All four pass. The table shows adjusted values for both declared families.
This construction holds the raw p-values fixed to isolate the adjustment step. It does not demonstrate that a real low-count filter has the required statistical properties. In an actual analysis, the relationship between filter, test and null distribution needs justification.
The newly declared G4 did not acquire a larger biological effect or a new raw p-value. Its multiple-testing context changed. Report that distinction instead of saying that filtering made the gene biologically more convincing.
| Gene | Raw p | BH, all eight | BH, retained four |
|---|---|---|---|
| G1 | 0.001 | 0.008 | 0.004 |
| G2 | 0.008 | 0.032 | 0.016 |
| G3 | 0.018 | 0.048 | 0.024 |
| G4 | 0.040 | 0.080 | 0.040 |
| G5 | 0.250 | 0.400 | Excluded |
| G6 | 0.500 | 0.667 | Excluded |
| G7 | 0.700 | 0.800 | Excluded |
| G8 | 0.900 | 0.900 | Excluded |
Independent filtering uses information intended to be independent of the test statistic under the null, while helping identify features with a reasonable chance of detection under the alternative. A low-information feature can contribute a testing burden while offering little power for the comparison.
The original independent-filtering research explains why the filter–test relationship matters. The word independent is statistical: it is not established merely because the filter appears in a different spreadsheet column or because it was applied in a separate software command.
In the toy example, retaining G1–G4 because they happen to have the four smallest p-values would reproduce the smaller adjustment numerically. It would not establish the same error control as an appropriate independent filter. The procedure has selected on the very evidence later being assessed.
Predeclaring a biologically motivated subset is also different from searching many subsets and reporting the one with most discoveries. The relevant family may include several contrasts or stages, not only the rows visible in the final figure.
Use a validated filtering method appropriate to the model. Preserve its rule and settings, and avoid repeatedly trying outcome-driven filters until a desired gene crosses a threshold.
The DESeq2 documentation distinguishes several reasons for missing results. A row of all zero counts lacks ordinary effect and test estimates. An extreme-count outlier can lead to missing test results under the relevant settings. Independent filtering can leave a raw p-value while setting only the adjusted value to NA.
DESeq2 uses mean normalised counts as its default independent-filter statistic and chooses a threshold within its documented procedure. These implementation details and options are version-sensitive; preserve the version and result-call settings rather than treating this summary as a command template.
A missing adjusted value is not an adjusted value of zero. It also does not establish equivalence or absence of an effect. Inspect the row’s counts, available estimates, analysis flags and filtering history before deciding what it means.
If a downstream summary groups missing adjusted values with non-discoveries, label that as a reporting category. Retain the original reason codes. Combining them for one count should not erase the distinction between no detected difference and inadequate or excluded evidence.
| Result pattern | Question to investigate |
|---|---|
| All counts zero; effect and test fields missing | Was there information for this feature in any sample? |
| Raw and adjusted p-values missing with an outlier flag | What outlier rule and settings applied? |
| Raw p present; adjusted p missing | Was this row independently filtered or otherwise excluded from adjustment? |
A. Keep only the four smallest p-values
An analyst tests eight genes, retains the four smallest raw values and runs BH as though those four were the whole planned family. The arithmetic matches our retained table. The selection rule does not match the stipulated independent filter, so that numerical agreement does not justify the claimed error control.
B. A gene is not a discovery in either run
Does that establish no expression effect? No. A non-rejection can reflect limited information or uncertainty. A claim that effects are sufficiently small needs an appropriate effect-size question, precision and testing framework.
C. Compare lists from two studies
One study reports 100 discoveries among 10,000 adjusted tests; another reports 100 among 5,000 retained tests. Equal list sizes do not establish equal biology, power or reproducibility. Examine samples, contrasts, detection, filters and effect estimates.
A useful evidence check
Retain the original feature table, biological sample manifest, model and contrast, filter statistic and rule, retained family size, adjustment method, threshold, effect estimates, uncertainty and missing-result reasons. Count discoveries with the denominator and analysis stage named.
Can an adjusted p-value depend on other genes?
Yes. Multiple-testing adjustment uses the family of hypotheses. That dependence is part of its purpose, so a value should travel with the family and procedure that produced it.
Does NA mean the gene is unimportant?
No. NA is an unavailable analysis value. Its cause may concern low information, filtering, an outlier or another processing state; biological importance requires a different argument.
Can I replace every missing value with one?
A clearly defined downstream task may use a non-discovery convention, but preserve the original table and reasons. Replacing values without recording why they were missing changes the evidence record.
Does a five-percent FDR level mean each gene is 95% likely to be real?
No. FDR control concerns the expected proportion of false discoveries produced by a procedure under its assumptions. It is not a posterior probability assigned to each gene.
A defensible list carries its comparison, information boundary, testing family and effect estimates. Another reader should be able to see which genes were assessed, which were excluded, and which conclusions remain unresolved.
Follow the expression analysis
DESeq2, moderated dispersion and fold-change evidence — connect the result table with count models, design and estimation.
RNA sequencing, normalisation and differential expression — follow the wider counts-to-comparison chain.
Keep the error-control question explicit
How multiple testing works — distinguish hypothesis families, FDR and family-wise error.
stageR and gene-level FDR with transcript confirmation — see why a multi-stage question needs its own error-control account.
Sources and the boundary of the examples
The eight-gene table is an original arithmetic demonstration. It does not estimate expression from counts, validate a filter or demonstrate that any named biological gene changes. Software-specific statements should be checked against the version used.
DESeq2 authors: Analyzing RNA-seq data with DESeq2 — official current documentation on independent filtering and missing result fields.
Bourgon, Gentleman and Huber (2010): Independent filtering increases detection power for high-throughput experiments — primary research on filter–test relationships and detection power.
SciPy developers: false_discovery_control — official description of BH adjustment, assumptions and FDR interpretation.
Sources and connected article links checked on 21 October 2026.
