diff options
| author | Alexander_Kabui | 2024-10-25 13:03:08 +0300 |
|---|---|---|
| committer | Alexander_Kabui | 2024-10-25 13:03:08 +0300 |
| commit | be3dcbae4c48083fac5e51851579dc171932c66c (patch) | |
| tree | cff39d8543519bdef20dd4237c92e875c5a66b7a | |
| parent | 0bfe8bae9f699ec8ce7586d5c780915daf7e0e9e (diff) | |
| download | genenetwork3-be3dcbae4c48083fac5e51851579dc171932c66c.tar.gz | |
feat: Add method to perform 1 pair scan.
| -rw-r--r-- | scripts/rqtl2_wrapper.R | 41 |
1 files changed, 40 insertions, 1 deletions
diff --git a/scripts/rqtl2_wrapper.R b/scripts/rqtl2_wrapper.R index 9d41c6a..a2fbf1e 100644 --- a/scripts/rqtl2_wrapper.R +++ b/scripts/rqtl2_wrapper.R @@ -165,8 +165,47 @@ error_lod <- calc_errorlod(dataset, Pr, quiet = FALSE, cores = 4) print(error_lod) -# +# Perform genome scane +# rework on this issue +## grab phenotypes and covariates; ensure that covariates have names attribute +pheno <- dataset$pheno +covar <- match(dataset$covar$sex, c("f", "m")) # make numeric +names(covar) <- rownames(dataset$covar) +Xcovar <- get_x_covar(dataset) +print(pheno) +print(covar) +print(Xcovar) +# rework on fetching th Xcovar and getting the covar data + +# perform kinship + + +perform_genome_scan <- function(cross, genome_prob, method, covar =NULL, xCovar=NULL) +# perform scan1 using haley-knott regression or linear model, or LOCO linear model +{ +if (method == "LMM") { + # provide parameters for this + kinship = kinship(genome_prob) + out <- scan1(genome_prob, cross$pheno, kinship=kinship, addcovar=covar, Xcovar=Xcovar) +} + +if (method == "LOCO") { +# perform kinship inside better option + kinship = kinship(genome_prob, "loco") + out <- scan1(genome_prob, cross$pheno, kinship=kinship,addcovar=covar, Xcovar=Xcovar) +} +else { +# perform using Haley Knott +out <- scan1(genome_prob, cross$pheno, addcovar=NULL, Xcovar=Xcovar) +} +return (out) +} + +results <- perform_genome_scan(cross=dataset, genome_prob=Pr, method = "HMM") + + +results |
