# Keep vignette fast and CRAN-safe: disable evaluation by default knitr::opts_chunk$set( collapse = TRUE, comment = "#>", eval = FALSE, message = FALSE, warning = FALSE )
gwas2crispr
retrieves significant genome-wide association study (GWAS) SNPs for an Experimental Factor Ontology (EFO) trait, aggregates variant/gene/study metadata, and optionally exports CSV, BED, and FASTA files for downstream functional genomics and CRISPR guide design. The package targets GRCh38/hg38.
Key design for CRAN compliance: functions do not write by default. File writing happens only if you set out_prefix
. In examples/tests/vignettes, write to tempdir()
.
Runtime prerequisites: the GWAS Catalog client gwasrapidd is required for data retrieval; Biostrings + BSgenome.Hsapiens.UCSC.hg38 are required only if you want FASTA output.
fetch_gwas(efo_id, p_cut)
— fetch significant associations via gwasrapidd
with a REST fallback.run_gwas2crispr(efo_id, p_cut, flank_bp, out_prefix = NULL, verbose = FALSE)
— end-to-end pipeline that returns objects; writes CSV/BED/FASTA only if out_prefix
is provided.This vignette does not run network calls or write files (global
eval = FALSE
) to keep CRAN checks deterministic.
if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager") BiocManager::install(c("Biostrings", "BSgenome.Hsapiens.UCSC.hg38")) install.packages("gwasrapidd") # required for GWAS retrieval if (!requireNamespace("devtools", quietly = TRUE)) install.packages("devtools") devtools::install_github("leopard0ly/gwas2crispr")
library(gwas2crispr) # Lung disease (EFO_0000707), GRCh38/hg38 run_gwas2crispr( efo_id = "EFO_0000707", p_cut = 1e-6, flank_bp = 300, out_prefix = "lung" # produces: lung_snps_full.csv / lung_snps_hg38.bed / lung_snps_flank300.fa )
library(gwas2crispr) tmp <- tempdir() # CRAN-safe target res <- run_gwas2crispr( efo_id = "EFO_0000707", p_cut = 1e-6, flank_bp = 300, out_prefix = file.path(tmp, "lung"), # writes here, not to user's home verbose = FALSE ) # Files written (list components or vector of paths, depending on return structure): res$csv res$bed res$fasta # present only if BSgenome/Biostrings are installed
Rscript "$(Rscript -e \"cat(system.file('scripts','gwas2crispr.R', package='gwas2crispr'))\")" \ -e EFO_0000707 -p 1e-6 -f 300 -o "$(Rscript -e \"cat(tempdir())\")/lung"
The
-o
path in CLI should point to a temporary or user-chosen directory. Avoid writing to the package root when reproducing examples under CRAN-like conditions.
sessionInfo()
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.