Jovialis
Advisor
- Messages
- 9,888
- Reaction score
- 6,794
- Points
- 113
- Ethnic group
- Italian
- Y-DNA haplogroup
- R1b-PF7566>Y227216
- mtDNA haplogroup
- H6a1b7
Code:
library(admixtools)
library(tidyverse)
prefix <- "C:/Users/jovialis/Documents/Bioinformatics/Jovialis_HO_merge/merged_HO"
f2_dir <- "C:/Users/jovialis/Documents/Bioinformatics/Jovialis_HO_merge/f2_blocks"
target <- "Italian_North.HO"
left <- c(
"Russia_Samara_EBA_Yamnaya.AG",
"Luxembourg_Mesolithic.AG",
"Turkey_Marmara_Barcin_N.AG",
"Iran_GanjDareh_N.AG"
)
outgroups <- c(
"Ethiopia_4500BP.AG", "Russia_UstIshim_IUP.DG", "Italy_Epigravettian.AG.BY.AA", "Russia_YuzhniyOleniyOstrov_Mesolithic.AG", "Russia_MA1_UP.SG", "Georgia_Satsurblia_LateUP.SG", "Jordan_PPNB.AG")
mypops <- c(target, left, outgroups)
extract_f2(
prefix, f2_dir,
pops = mypops,
overwrite = TRUE,
auto_only = TRUE,
blgsize = 0.05
)
f2_blocks <- f2_from_precomp(
f2_dir,
pops = mypops,
afprod = TRUE
)
qpwave_results <- qpwave(
f2_blocks,
left = left,
right = outgroups,
verbose = TRUE
)
print(qpwave_results$rankdrop)
min_p <- min(qpwave_results$rankdrop$p, na.rm = TRUE)
if (!is.na(min_p) && min_p > 0.05) {
res_geno <- qpadm(
prefix,
left = left,
right = outgroups,
target = target,
allsnps = TRUE,
auto_only = TRUE,
verbose = TRUE,
return_f4 = TRUE
)
print(res_geno$weights)
print(res_geno$popdrop)
} else {
res_geno <- qpadm(
prefix,
left = left,
right = outgroups,
target = target,
allsnps = TRUE,
auto_only = TRUE,
verbose = TRUE,
return_f4 = TRUE
)
res_f2 <- qpadm(
f2_blocks,
left = left,
right = outgroups,
target = target,
verbose = TRUE
)
print(res_geno$weights)
print(res_geno$popdrop)
print(res_f2$weights)
print(res_f2$popdrop)
}