read_and_preprocess_data() has been removed. Its
responsibilities are now handled internally by each test function via
the new .prepare_data() helper in utils.R.
Existing scripts that called this function directly must be updated to
pass dataframe, con1, con2,
exp1, exp2 to the test functions or to
DGEAR() instead.Unified function interface: all five test
functions (perform_t_test, perform_anova,
perform_dunnett_test, perform_h_test,
perform_wilcox_test) now share a consistent signature:
(dataframe, con1, con2, exp1, exp2, alpha = 0.05, annot_df = NULL).
Optional gene annotation
(annot_df): users may supply a GEO SOFT-style annotation
data.frame with columns ID and
Gene.Symbol (or Gene.symbol) to map probe row
names to gene symbols. When annot_df = NULL (the default),
row names of dataframe are used directly — making the
package fully usable without any annotation file.
Richer DGEAR() return value: the
main function now returns a named list with four elements:
DEGs — genes that passed majority votingFDR_Table — per-test BH-adjusted p-values,
Fisher-combined FDR, ensemble voting score, and log2FC for every
geneResults_Table — concise summary (G_Symbol, CombineFDR,
log2FC, Ensemble)IndividualTests — raw Table and
DEGs output from each of the five test functionsFisher’s combined p-value: DGEAR()
now computes a combined p-value across all five tests using
metapod::parallelFisher and includes it as
CombineFDR in FDR_Table and
Results_Table.
Internal helpers in utils.R:
.prepare_data() centralises log2 normalisation and
.resolve_symbols() centralises gene symbol resolution,
eliminating code duplication across test files.
Defensive Dunnett test:
perform_dunnett_test() now silently assigns NA
p-values to genes with zero variance, NA values, or
infinite values, rather than throwing an error that would abort the full
analysis.
Input validation in DGEAR():
informative stop() messages are raised for invalid column
ranges, alpha outside (0, 1), or
votting_cutoff outside 1–5.
82-test testthat suite:
tests/testthat/ now contains 7 test files covering
structure, value sanity, biological correctness, defensive handling,
alpha/cutoff sensitivity, and annotation behaviour for every exported
function.
Interactive demo script:
inst/examples/DGEAR_demo.R is a fully annotated walkthrough
callable via
source(system.file("examples", "DGEAR_demo.R", package = "DGEAR")).
Eliminated the R CMD check NOTE “no visible
binding for global variable ‘G_Symbol’” by removing all reliance on
globally defined annotation vectors. Gene symbols are now always
resolved locally inside each function.
Removed library(DGEAR) from all
\examples{} blocks in .Rd files;
R CMD check loads the package automatically, so the call
caused an error.
Wrapped perform_dunnett_test() examples in
\donttest{} to prevent R CMD check failures
from the DescTools::DunnettTest external dependency in
constrained check environments.
fdr columns are now consistently typed as
integer (0L / 1L) rather than a mix of NA and
numeric 1.
BH.perform_h_test(): removed the FC
parameter; fold-change is now computed internally from the data.perform_wilcox_test(): internal improvements.NEWS.md with newsmd.