Abstract
Identifying biologically meaningful gene sets and evaluating their ability to separate conditions based on gene expression is an important step in many transcriptomic analyses. While most workflows support data-driven feature selection, few allow direct evaluation of predefined gene sets in a classification context. This limits the ability to assess literature-derived panels or biologically motivated hypotheses prior to downstream analysis. For this, we developed gSELECT, a Python library for evaluating the classification performance of both automatically ranked and user-defined gene sets. It operates on .csv or .h5ad expression matrices with group labels and can be easily integrated into existing analysis pipelines. Gene selection can be based on mutual information ranking, random sampling, or custom input. This supports hypothesis-driven testing without data-derived selection bias and allows direct evaluation of known or candidate markers. Classification is performed using multilayer perceptrons with Monte Carlo cross-validation, either on the full dataset or with a user-defined train/test split. Exhaustive and greedy strategies are available to explore combinatorial effects among genes to identify minimal gene combinations with high predictive power. gSELECT is intended as a pre-analysis tool to evaluate dataset separability and to support early assessment of candidate genes before committing to resource-intensive downstream analyses.