iGWAS: informed Genome-Wide Association Study

Description Usage Arguments Details Value See Also

View source: R/iGWAS.R

Description

Perform an informed Genome-Wide Association Study (iGWAS). This is based on a current study and a prior study. The goal is to discover significant SNPs in the current study using hypothesis testing. The prior study is used to improve power. P-values and sample sizes are used for both the current and the prior studies.

Usage

1
2
3
4
iGWAS(P_current, N_current, P_prior, N_prior, q = 0.05,
  weighting_method = "bayes", p_adjust_method = "genome-wide", sides = 2,
  phi = 1, beta = 2, UB_exp = Inf, figure = "FALSE",
  GWAS_data_frame = NA)

Arguments

P_current

P-values in the current study, a numeric vector of length J, with entries between 0 and 1

N_current

sample size in the current study, a positive integer (or vector of length J)

P_prior

P-values in the prior study, a numeric vector of length J, with entries between 0 and 1

N_prior

sample size in the current study, a positive integer (or vector of length J)

q

(optional) uncorrected level at which tests should be performed. Default q = 0.05

weighting_method

(optional) weighting method used. Available methods: c("unweighted", "bayes", "spjotvoll", "exponential"). The default is "bayes".

p_adjust_method

(optional) adjustment method for multiple testing used. The available methods are "genome-wide" and those from the p.adjust function in the stats package.: c("holm", "hochberg", "hommel", "bonferroni", "BH", "BY", "fdr", "none"). "genome-wide" tests all hypotheses at the genome-wide level 5*10^-8. The default is "genome-wide".

sides

(optional) The prior p-values must be one or two-sided: sides = 1 or 2. Default sides = 2

phi

(optional) dispersion factor used to multiply all standard errors. Default phi = 1. Used only for Bayes weights.

beta

(optional) weights are proportional to exp(mu*beta), default beta=2. Used only for Exponential weights.

UB_exp

(optional) upper bound on the weights (default UB = Inf). Used only for Exponential weights.

figure

(optional) figure = "TRUE" creates a manhattan plot of the weighted and unweighted p-values. Possible values c("TRUE","FALSE"), default "FALSE"

GWAS_data_frame

(optional) when figure = "TRUE", this is the parameter used to create a Manattan plot. it must be a data frame with columns containing c("CHR","BP"). These parameters are passed to the qqman package for plotting manhattan plots. Default is NA.

Details

This method computes the p-value weights based on the prior p-values, and uses them in multiple testing (p-value weighting) for the current p-values. The p-value weighting method (e.g. Unweighted, Bayes) and the multiple testing adjustment (e.g. Bonferroni, Benjamini-Hochberg) can be specified independently.

For more details, see the paper "Optimal Multiple Testing Under a Gaussian Prior on the Effect Sizes", by Dobriban, Fortney, Kim and Owen, http://arxiv.org/abs/1504.02935

Value

A list containing:

sig_ind: A vector of 0-1s indicating the significant tests (1-s)

num_sig: The number of significant tests. Equals sum(sig_ind)

w: The computed p-value weights

P_w: The weighted p-values. These equal P_current/w

See Also

Other p.value.weighting: bayes_weights; exp_weights; spjotvoll_weights


dobriban/pweight documentation built on Oct. 6, 2018, 4:38 a.m.