Simulating single cell RNA-seq data with complicated structure. This package is developed based on the Splat method (Zappia, Phipson and Oshlack (2017) <doi:10.1186/s13059-017-1305-0>). 'GeneScape' incorporates additional features to simulate single cell RNA-seq data with complicated differential expression and correlation structures, such as sub-cell-types, correlated genes (pathway genes) and hub genes.

The workflow is a versatile R package designed for comprehensive feature selection in bulk RNAseq datasets. Its key innovation lies in the seamless integration of the 'Python' 'scikit-learn' (<https://scikit-learn.org/stable/index.html>) machine learning framework with R-based bioinformatics tools. 'GeneSelectR' performs robust Machine Learning-driven (ML) feature selection while leveraging 'Gene Ontology' (GO) enrichment analysis as described by Thomas PD et al. (2022) <doi:10.1002/pro.4218>, using 'clusterProfiler' (Wu et al., 2021) <doi:10.1016/j.xinn.2021.100141> and semantic similarity analysis powered by 'simplifyEnrichment' (Gu, Huebschmann, 2021) <doi:10.1016/j.gpb.2022.04.008>. This combination of methodologies optimizes computational and biological insights for analyzing complex RNAseq datasets.

Gene sets are fundamental for gene enrichment analysis. The package 'geneset' enables querying 
    gene sets from public databases including 'GO' (Gene Ontology Consortium. (2004) <doi:10.1093/nar/gkh036>), 
    'KEGG' (Minoru et al. (2000) <doi:10.1093/nar/28.1.27>), 
    'WikiPathway' (Marvin et al. (2020) <doi:10.1093/nar/gkaa1024>), 
    'MsigDb' (Arthur et al. (2015) <doi:10.1016/j.cels.2015.12.004>), 
    'Reactome' (David et al. (2011) <doi:10.1093/nar/gkq1018>),
    'MeSH' (Ish et al. (2014) <doi:10.4103/0019-5413.139827>), 
    'DisGeNET' (Janet et al. (2017) <doi:10.1093/nar/gkw943>),
    'Disease Ontology' (Lynn et al. (2011) <doi:10.1093/nar/gkr972>), 
    'Network of Cancer Genes' (Dimitra et al. (2019) <doi:10.1186/s13059-018-1612-0>) and 
    'COVID-19' (Maxim et al. (2020) <doi:10.21203/rs.3.rs-28582/v1>).
    Gene sets are stored in the list object which provides data frame of 'geneset' and 'geneset_name'. 
    The 'geneset' has two columns of term ID and gene ID. The 'geneset_name' has two columns of 
    terms ID and term description.