Extract, Analyze and Visualize Mutational Signatures for Genomic Variations
Overview
Genomic alterations including single nucleotide substitution, copy number alteration, etc. are the major force for cancer initialization and development. Due to the specificity of molecular lesions caused by genomic alterations, we can generate characteristic alteration spectra, called 'signature' (Wang, Shixiang, et al. (2021) DOI:10.1371/journal.pgen.1009557 & Alexandrov, Ludmil B., et al. (2020) DOI:10.1038/s41586-020-1943-3 & Steele Christopher D., et al. (2022) DOI:10.1038/s41586-022-04738-6). This package helps users to extract, analyze and visualize signatures from genomic alteration records, thus providing new insight into cancer study.
sig_extract(),sig_estimate()andbp_extract_signatures()gained abackend = c("R", "rust")argument (issue #478, parity plan P1)."R"keeps the in-package **NMF** engine byte-for-byte;"rust"routes the decomposition across an isolated process boundary to the certified in-house Apache-2.0 KL-MU kernel shipped with themsuiterpackage (optional, runtime-gated; install from https://github.com/WangLabCSU/msuiter — not yet on CRAN):msuiter-kernel fit-kl, protocol 1, with a frozen--versionhandshake, fail-closed output parsing, a fixed iteration budget via optionsigminer.rust_iters(default 2000) and an explicit per-run seed law (seed + i - 1for runiofnrun). The rust path is mutually exclusive withpynmf = TRUEand expects a KL-family method ("brunet").- Fixed the SigProfiler interop recall command (
sigprofiler_extract()fallback path after the reticulate call fails) to escape Windows backslash paths before embedding them in the Python-cpayload (issue #470): literal backslashes are doubled for thecmd.exelayer, and values that can not travel the shell + python layers safely (embedded quotes, line breaks,%VAR%expansion, POSIX backslashes,$/backtick expansion, word-splitting whitespace in the Python path) are now rejected with an actionable error instead of emitting a broken command.
Show all changes in 2.4.0Hide the rest of the changes in 2.4.0
sigprofiler_extract(output_matrix_only = TRUE)no longer requires the Python / reticulate / conda stack: the matrix-file hand-off is pure R.- Clarified the
sigprofiler_import(type = "refit")documentation against the current SigProfilerExtractor output tree: the branch readsSuggested_Solution/COSMIC_<MT>_Decomposed_Solution, which current versions emit unconditionally; the upstream option that was removed isrefit_denovo_signatureson the extract side. The refit import branch stays functional and is now pinned by fixture tests. - Added testthat fixture round-trip coverage for the interop bridge and a local-only SigProfilerExtractor version-matrix harness (opt-in via
SIGMINER_SP_MATRIX=1; deliberately not wired into CI, seetests/testthat/README-sigprofiler-matrix.md). sig_fit()gained two opt-in likelihood-based refit methods (parity plan P3):method = "likelihood", a clean-room implementation of the MuSiCal bidirectional stepwise selection under the multinomial likelihood (Jin et al., Nature Genetics 56:541-552, 2024; see?sig_fitreferences), with the acceptance thresholds exposed as the caller-overridablell_add/ll_keeparguments — the paper describes them as study-optimized parameters, and the in-lane defaults (8 / 8) are a fixture calibration, not paper constants; andmethod = "lrt", a clean-room implementation of the PASA likelihood-ratio presence tests with the stop and minimality criteria at the significance levelalpha(Jiang et al., Briefings in Bioinformatics 26(1):bbaf042, 2025; defaultalpha = 0.01, in-lane calibration). Both methods refit the selected set with the same QP simplex engine that drivesmethod = "QP", rejectauto_reduce(their decision layer already selects the reference set), and are also available on the bootstrap surfacessig_fit_bootstrap()andsig_fit_bootstrap_batch(). The legacy methods and the default remain unchanged.
From NEWS.md in the release
Install
Health
- OK13 OK2026-10-04
- NOTE13 NOTE2026-06-09
- ERROR12 NOTE, 1 ERROR2026-06-07
- NOTE14 NOTE2026-04-22
- ERROR13 NOTE, 1 ERROR2026-04-18
Show 1 earlier changeHide 1 earlier change
- NOTE14 NOTE2026-03-10
Documentation
- Help pages
- 108 (3 internal)includes a package overview page
- Examples that run
- 70%57 run in a plain check · 23 only when donttest examples are enabled (R CMD check --as-cran) · 1 never run
- Exported functions with examples
- 70%
- Documented parameters
- 97%
- Return-value docs
- 93%
- Help pages citing references
- 15%
Downloads
Repository
- PRs merged (all time)
- 97%
- Median days to close, 50 most recently updated closed issues
- 6
- Median days to close, 50 most recently updated closed PRs
- 0
Stars over time
Releases over time
Issues over time
PRs over time
Commits over time
11 development-tooling and community-health practices detected across 6 families in the upstream repository
Checks run against github.com/shixiangwang/sigminer on 2026-10-21.
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
GitHub Pages site last deployed 2026-10-21 · The repository has a site deploy workflow
pkgdown site last built 2026-10-21
Show all practicesHide 2 practices
This repository shows signs of AI coding tools.
- GitHub Copilotfirst seen 2025-12-25Pull request: opened by its own accountCommits: 8 by its own account
- Claude Codefirst seen 2026-10-14Pull request it wrote: opened by a project memberCommits: at least 1 crediting it in the message
Dependencies
Installing sigminer adds 85 packages (39 with compiled code, 76 MB of source tarballs). Heaviest: stringi 11 MB, ggplot2 6.0 MB, data.table 5.7 MB. 2 more not on CRAN are not measured.
Code & Tests
Datasets
People & History
Pick two releases to compare their code metrics.
- 2.4.0Latest
- 2.3.32026-09-27 · diff ↗
- RR 4.6.0 released · 2026-04-24
- RR 4.5.0 released · 2025-04-11
- 2.3.12024-05-11 · diff ↗
- RR 4.4.0 released · 2024-04-24
- 2.3.02023-12-12 · diff ↗
- 2.2.22023-08-21 · diff ↗
- RR 4.3.0 released · 2023-04-21
- 2.2.0
- 2.1.9
- 2.1.82022-10-20 · diff ↗
- 2.1.7
- 2.1.62022-08-09 · diff ↗
- 2.1.52022-06-30 · diff ↗
- 2.1.42022-04-26 · diff ↗
Show 29 earlier eventsHide 29 earlier events
- RR 4.2.0 released · 2022-04-22
- 2.1.32022-03-10 · diff ↗
- 2.1.22021-12-15 · diff ↗
- 2.1.12021-10-29 · diff ↗
- 2.1.0
- 2.0.5
- 2.0.4
- 2.0.32021-07-19 · diff ↗
- 2.0.22021-06-17 · diff ↗
- 2.0.12021-05-19 · diff ↗
- RR 4.1.0 released · 2021-05-18
- 2.0.0
- 1.2.5
- 1.2.4
- 1.2.12021-01-08 · diff ↗ ·
added 12 exports
bp_attribute_activity, bp_cluster_iter_list, bp_extract_signatures, bp_extract_signatures_iter, bp_get_rank_score, bp_get_sig_obj, bp_get_stats, bp_show_survey, bp_show_survey2, get_sig_rec_similarity, read_xena_variants, simulate_catalogue_matrix - 1.1.02020-11-11 · diff ↗ ·
added 6 exports
group_enrichment, same_size_clustering, show_cosmic, show_group_enrichment, simulate_catalogue, simulate_signature - 1.0.19
- 1.0.162020-09-12 · diff ↗ ·
added 6 exports
get_sig_cancer_type_index, output_bootstrap, output_fit, output_sig, output_tally, show_group_distribution - 1.0.132020-08-27 · diff ↗ ·
added 12 exports
cosine, get_cn_freq_table, get_sig_db, read_copynumber_seqz, read_vcf, show_cn_freq_circos, show_cn_group_profile, show_sig_profile_heatmap, show_sig_profile_loop, sigprofiler_extract, sigprofiler_import, transform_seg_table - 1.0.72020-06-17 · diff ↗
- 1.0.6
- 1.0.52020-05-14 · diff ↗ ·
added 6 exports
.env, show_sig_bootstrap_error, show_sig_bootstrap_exposure, show_sig_bootstrap_stability, show_sig_fit, sig_fit_bootstrap_batch - 1.0.32020-05-01 · diff ↗ ·
added 3 exports
enrich_component_strand_bias, report_bootstrap_p_value, sig_fit_bootstrap - RR 4.0.0 released · 2020-04-24
- 1.0.02020-03-31 · diff ↗ ·
removed 24 exports
GenomicVariation, draw_cn_components, draw_cn_distribution, draw_cn_features, draw_sig_activity, draw_sig_corrplot, draw_sig_profile, draw_subtypes_comparison, get_ArmLocation, get_LengthFraction, get_cnlist, get_cnsummary_sample, get_components, get_features, get_matrix, prepare_copynumber, read_variation, sig_assign_samples, sig_get_activity, sig_get_correlation, sig_get_similarity, sig_prepare, sig_summarize_subtypes, test_run_componentsadded 50 exports
:=, .data, add_h_arrow, add_labels, as_label, as_name, enquo, enquos, expr, get_adj_p, get_bayesian_result, get_cn_ploidy, get_genome_annotation, get_group_comparison, get_groups, get_sig_exposure, get_sig_feature_association, get_sig_similarity, get_tidy_association, get_tidy_parameter, handle_hyper_mutation, scoring, show_catalogue, show_cn_circos, show_cn_components, show_cn_distribution, show_cn_features, show_cn_profile, show_cosmic_sig_profile, show_group_comparison and 20 more - 0.1.112019-05-07 · diff ↗
- RR 3.6.0 released · 2019-04-26
- 0.1.92019-04-25
- RR 3.5.0 released · 2018-04-23
Package metadata
- First published
- 2019-04-25
- Total releases
- 36 / 7 yrs
- License
- MIT + file LICENSE OSI
- Minimum R
- ≥ 3.5
- Bundled data
- 789 KB / 22 files
- Download size
- 4.2 MB
Cite
Cite this package
Run in R for the authors' entry:
citation("sigminer")The package provides a citation file, so citation() returns the authors' own entry.
It points to 10.1371/journal.pgen.1009557.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-24, which the citation names so these numbers can be found later. More on citing and the projects behind them.