`scan_multi_onechr` calculates log likelihood for d-variate phenotype model fits. Inputted parameter `start_snp` indicates where in the `probs` object to start the scan.

scan_multi_onechr(
  probs,
  pheno,
  kinship = NULL,
  addcovar = NULL,
  start_snp = 1,
  n_snp = dim(probs)[3],
  max_iter = 10000,
  max_prec = 1/1e+08,
  cores = 1
)

Arguments

probs

an array of founder allele probabilities for a single chromosome

pheno

a matrix of phenotypes

kinship

a kinship matrix for one chromosome

addcovar

a matrix, n subjects by c additive covariates

start_snp

index of where to start the scan within probs

n_snp

the number of (consecutive) markers to include in the scan

max_iter

maximum number of iterations for EM algorithm

max_prec

stepwise precision for EM algorithm. EM stops once incremental difference in log likelihood is less than max_prec

cores

number of cores for parallelization

Value

a tibble with d + 1 columns. First d columns indicate the genetic data (by listing the marker ids) used in the design matrix; last is log10 likelihood

References

Knott SA, Haley CS (2000) Multitrait least squares for quantitative trait loci detection. Genetics 156: 899–911.

Jiang C, Zeng ZB (1995) Multiple trait analysis of genetic mapping for quantitative trait loci. Genetics 140: 1111-1127.

Zhou X, Stephens M (2014) Efficient multivariate linear mixed model algorithms for genome-wide association studies. Nature methods 11:407-409.

Broman KW, Gatti DM, Simecek P, Furlotte NA, Prins P, Sen S, Yandell BS, Churchill GA (2019) R/qtl2: software for mapping quantitative trait loci with high-dimensional data and multi-parent populations. GENETICS https://www.genetics.org/content/211/2/495.

Examples

# read data n <- 50 pheno <- matrix(rnorm(2 * n), ncol = 2) rownames(pheno) <- paste0("s", 1:n) colnames(pheno) <- paste0("tr", 1:2) probs <- array(dim = c(n, 2, 5)) probs[ , 1, ] <- rbinom(n * 5, size = 1, prob = 0.2) probs[ , 2, ] <- 1 - probs[ , 1, ] rownames(probs) <- paste0("s", 1:n) colnames(probs) <- LETTERS[1:2] dimnames(probs)[[3]] <- paste0("m", 1:5) scan_multi_onechr(probs = probs, pheno = pheno, kinship = NULL, cores = 1)
#> # A tibble: 5 x 3 #> Var1 Var2 log10lik #> <chr> <chr> <dbl> #> 1 m1 m1 -60.4 #> 2 m2 m2 -60.2 #> 3 m3 m3 -60.4 #> 4 m4 m4 -60.0 #> 5 m5 m5 -60.5