Nothing
## ---- include = FALSE---------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
options(rmarkdown.html_vignette.check_title = FALSE)
## -----------------------------------------------------------------------------
library(clipp)
MAF <- 0.1
geno_freq <- geno_freq_monogenic(p_alleles = c(1 - MAF, MAF))
trans <- trans_monogenic(n_alleles = 2)
## -----------------------------------------------------------------------------
geno_freq_monogenic(p_alleles = c(1 - MAF, MAF), annotate = TRUE)
## -----------------------------------------------------------------------------
trans_monogenic(n_alleles = 2, annotate = TRUE)
## -----------------------------------------------------------------------------
data("dat_small", "penet_small", "dat_large", "penet_large")
head(dat_small)
head(penet_small)
## -----------------------------------------------------------------------------
monozyg_small <- list(c("ora024", "ora027"), c("aey063", "aey064"))
## -----------------------------------------------------------------------------
pedigree_loglikelihood(dat_small, geno_freq, trans, penet_small,
monozyg = monozyg_small, sum_loglik = FALSE, ncores = 2)
## ---- eval = FALSE------------------------------------------------------------
# system.time(ll <- pedigree_loglikelihood(dat_large, geno_freq, trans, penet_large))
# #> user system elapsed
# #> 10.64 0.15 10.83
# ll
# #> [1] -18020.99
## -----------------------------------------------------------------------------
head(dat_small)
## -----------------------------------------------------------------------------
penet.fn <- function(i, logodds1, logodds2) {
prob1 <- 1/(1 + exp(-logodds1))
prob2 <- 1/(1 + exp(-logodds2))
penet.i <- c(prob1, prob1, prob2)
if (dat_small$aff[i] == 0) penet.i <- 1 - penet.i
return(penet.i)
}
## ---- eval = FALSE------------------------------------------------------------
# library(stats4)
# minusll <- function(logodds1 = 0, logodds2 = 0) {
# penet <- t(sapply(1:nrow(dat_small), penet.fn, logodds1, logodds2))
# loglik <- pedigree_loglikelihood(dat_small, geno_freq, trans, penet,
# monozyg = monozyg_small, ncores = 2)
# return(-loglik)
# }
# minusll()
# #> [1] 705.6238
# fit <- mle(minusll)
# summary(fit)
# #> Maximum likelihood estimation
# #>
# #> Call:
# #> mle(minuslogl = minusll)
# #>
# #> Coefficients:
# #> Estimate Std. Error
# #> logodds1 -1.359962 0.1054336
# #> logodds2 -1.313467 6.8597364
# #>
# #> -2 log L: 1030.901
## -----------------------------------------------------------------------------
head(dat_small)
## -----------------------------------------------------------------------------
penet.fn <- function(i, logodds1, logodds2) {
prob1 <- 1/(1 + exp(-logodds1))
prob2 <- 1/(1 + exp(-logodds2))
penet.i <- c(prob1, prob1, prob2)
if (dat_small$aff[i] == 0) penet.i <- 1 - penet.i
if (dat_small$geno[i] == "1/1") penet.i[-1] <- 0 ###
if (dat_small$geno[i] == "1/2") penet.i[-2] <- 0 ###
if (dat_small$geno[i] == "2/2") penet.i[-3] <- 0 ###
return(penet.i)
}
## ---- eval = FALSE------------------------------------------------------------
# minusll()
# #> [1] 788.5003
# fit <- mle(minusll)
# summary(fit)
# #> Maximum likelihood estimation
# #>
# #> Call:
# #> mle(minuslogl = minusll)
# #>
# #> Coefficients:
# #> Estimate Std. Error
# #> logodds1 -1.357596 0.08405912
# #> logodds2 -1.395321 0.61632248
# #>
# #> -2 log L: 1196.65
#
## -----------------------------------------------------------------------------
head(dat_small)
genotype_probabilities(target = "ora008", dat_small, geno_freq, trans,
penet_small, monozyg_small)
## -----------------------------------------------------------------------------
penet.fn <- function(i) {
penet.i <- rep(1, 3)
if (dat_small$geno[i] == "1/1") penet.i[-1] <- 0
if (dat_small$geno[i] == "1/2") penet.i[-2] <- 0
if (dat_small$geno[i] == "2/2") penet.i[-3] <- 0
return(penet.i)
}
penet <- t(sapply(1:nrow(dat_small), penet.fn))
genotype_probabilities(target = "ora008", dat_small, geno_freq, trans,
penet, monozyg_small)
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.