knitr::opts_chunk$set( collapse = TRUE, comment = "#>", fig.path = "man/figures/README-" # fig.path = "docs/images/README-" # fig.path = "images/README-" # base.dir = "./" )
{target="blank"} {target="blank"} {target="blank"}
Calculate sample size and power for association studies involving mitochondrial DNA haplogroups - Based on Samuels et al. AJHG, 2006. 78(4):713-720. DOI:10.1086/502682{target="blank"}
install.packages("mthapower")
# install.packages("devtools") devtools::install_github("aurora-mareviv/mthapower")
# install.packages("shiny") shiny::runGist('5895082')
Ncmin
), required to detect: either a change from p0
(haplogroup frequency in controls) to p1
(haplogroup frequency in cases), or a given OR, with a predefined confidence interval, in a study with Nh
haplogroups.library(mthapower) library(dplyr) mydata <- mthacases(p0=0.445, Nh=11, OR.cas.ctrl=c(2), power=80, sig.level=0.05) # Baudouin study mydata <- mthacases(p0=0.445, Nh=11, OR.cas.ctrl=c(1.25,1.5,1.75,2,2.25,2.5,2.75,3), power=80, sig.level=0.05) mydata <- mydata[c(2,6)] mydata %>% knitr::kable() plot(mydata)
Nh
haplogroups. # Example 2a: # library(mthapower) pow <- mthapower(n.cases=203, p0=0.443, Nh=13, OR.cas.ctrl=2.33, sig.level=0.05) pow %>% knitr::kable()
# Example 2b: # Create data frames pow.H150 <- mthapower(n.cases=seq(50,1000,by=50), p0=0.433, Nh=11, OR.cas.ctrl=1.5, sig.level=0.05) pow.H175 <- mthapower(n.cases=seq(50,1000,by=50), p0=0.433, Nh=11, OR.cas.ctrl=1.75, sig.level=0.05) pow.H200 <- mthapower(n.cases=seq(50,1000,by=50), p0=0.433, Nh=11, OR.cas.ctrl=2, sig.level=0.05) pow.H250 <- mthapower(n.cases=seq(50,1000,by=50), p0=0.433, Nh=11, OR.cas.ctrl=2.5, sig.level=0.05) # Bind the three data frames: bindata <- rbind(pow.H150,pow.H175,pow.H200,pow.H250) # Adds column OR to binded data frame: bindata$OR <- rep(factor(c(1.50,1.75,2,2.5)), times = c(nrow(pow.H150), nrow(pow.H175), nrow(pow.H200), nrow(pow.H250))) # Create plot: # install.packages("car") library(car) scatterplot(power~ncases | OR, regLine=FALSE, smooth=FALSE, boxplots=FALSE, by.groups=TRUE, data=bindata)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.