Skip to content
cccskills
FreePublished on GitHub

bioconductor-snpstats

Classes and statistical methods for large SNP association studies. This extends the earlier snpMatrix package, allowing for uncertainty in genotypes.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md5.6 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

snpStats

Dependencies & Environment

Package-intrinsic requirements from the Bioconductor landing page — reproduce in any R environment.

  • Version: 1.62.0 · Bioconductor: 3.23 · R: ≥ 4.6
  • Depends: survival, Matrix
  • Imports: BiocGenerics
  • System requirements: URL
  • Install: BiocManager::install("snpStats")

When to Use

  • Performing genome-wide association studies (GWAS) on large cohorts with hundreds of thousands of SNPs.
  • Analyzing imputed genotype data where genotypes are represented as posterior probabilities (uncertainty) rather than hard calls.
  • Calculating linkage disequilibrium (LD) statistics ($r^2$ and $D'$) and performing haplotype-based association testing.
  • Conducting family-based association tests, such as the Transmission Disequilibrium Test (TDT).
  • Calculating fixation index ($F_{ST}$) to measure genetic differentiation between populations.

When NOT to Use

  • For modern, multi-million variant biobank-scale GWAS with complex population structure, use REGENIE or PLINK2 because snpStats is single-threaded and runs entirely in R memory.
  • For sequencing-based rare variant association tests (e.g., burden tests, SKAT), use SeqVarTools or GENESIS because snpStats is optimized for common micro-array SNP data.

Data Requirements

  • Input Format: PLINK bed/bim/fam files, or imputed genotype files (e.g., IMPUTE2 format).
  • Structure: Genotypes must be stored in the highly memory-efficient SnpMatrix or XSnpMatrix (for the X chromosome) classes, which pack genotypes into 1 byte per SNP.
  • Size: Typically thousands of samples and up to 1 million SNPs.

Key Parameters

  • snps: A SnpMatrix or XSnpMatrix object containing the genotype data.
  • phenotype: A vector or factor containing the target trait/phenotype for association testing.
  • covariates: A data frame of confounding variables (e.g., age, sex, principal components) to include in the regression model.
  • depth (1): The maximum distance (in number of SNPs) over which to calculate pairwise LD.
  • stats: A logical indicating whether to return detailed test statistics or just p-values.

Best Practices

  • Perform rigorous quality control (QC) on the SnpMatrix using col.summary() and row.summary() to filter out samples/SNPs with high missingness, low minor allele frequency (MAF), or Hardy-Weinberg equilibrium (HWE) deviations.
  • Always use the XSnpMatrix class for X-chromosome variants to correctly handle male hemizygosity and female heterozygosity.
  • Use principal component analysis (PCA) on a pruned subset of independent SNPs to identify and control for population stratification.
  • When working with imputed data, retain the probabilistic representation (uncertainty) to preserve statistical power and avoid bias from hard-calling.

Common Pitfalls

  • Mismatched PLINK files: Attempting to load PLINK files with mismatched sample or SNP counts causes import crashes. Fix: Verify that the .bed, .bim, and .fam files are perfectly synchronized and have not been modified independently.
  • Uncorrected population structure: Running association tests without correcting for population structure leads to highly inflated QQ-plots. Fix: Extract the top principal components using xxt() and include them as covariates in single.snp.tests().
  • Memory exhaustion during LD calculation: Calculating pairwise LD across an entire chromosome can exhaust system memory. Fix: Restrict the LD calculation using the depth parameter or a sliding window of physical distance.

Alternatives

  • GENESIS: For association testing in samples with complex pedigree structures or ancestry, supporting both GDS and SnpMatrix formats.
  • gwascat: For comparing GWAS results with the NHGRI-EBI GWAS Catalog.
  • GWASTools: For comprehensive quality control and data management of genome-wide association studies.

Citations

  • Clayton, D. (2021). snpStats: SnpMatrix and XSnpMatrix classes and methods. R package version 1.44.0.
  • Clayton, D., & Leung, H. T. (2007). An R package for association studies on locus-specific and genome-wide scales. Human Heredity, 64(1), 45-51.

References

<!-- biomate-cta -->

Run this on BioMate

This skill is the knowledge layer — when, why, and how to use snpstats. To run this analysis on your own data with managed compute, automated QC, and reproducible outputs, use BioMate — free to start.

▶ Open snpstats on BioMate →

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

The package contains functions for exploratory oligonucleotide array analysis. The dependence on tkWidgets only concerns few convenience functions. 'affy' is fully functional without it.

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

This tool uses the label-tree function from HyPhy to annotate a phylogenetic tree. It allows users to select a subset of leaves using either a regular expression or a list of sequence names, and then apply a specified label to these selecte

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

This package provides a client for the Bioconductor AnnotationHub web resource. The AnnotationHub web resource provides a central location where genomic files (e.g., VCF, bed, wig) and other resources from standard locations (e.g., UCSC, En

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

apeglm provides Bayesian shrinkage estimators for effect sizes for a variety of GLM models, using approximation of the posterior for individual coefficients.

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

ASURAT is a software for single-cell data analysis. Using ASURAT, one can simultaneously perform unsupervised clustering and biological interpretation in terms of cell type, disease, biological process, and signaling pathway activity. Inputting a single-cell RNA-seq data and knowledge-based databases, such as Cell Ontology, Gene Ontology, KEGG, etc., ASURAT transforms gene expression tables into original multivariate tables, termed sign-by-sample matrices (SSMs).

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

AUCell allows to identify cells with active gene sets (e.g. signatures, gene modules...) in single-cell RNA-seq data. AUCell uses the "Area Under the Curve" (AUC) to calculate whether a critical subset of the input gene set is enriched with

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

See all skills by bioMate-AI

Report a problem with this skill