Read allele frequencies from EIGENSTRAT files
eigenstrat_to_afs(
pref,
inds = NULL,
pops = NULL,
numparts = 100,
adjust_pseudohaploid = TRUE,
verbose = TRUE
)
Prefix of EIGENSTRAT files (files have to end in .geno
, .ind
, .snp
)
Individuals from which to compute allele frequencies
Populations from which to compute allele frequencies. If NULL
(default), populations will be extracted from the third column in the .ind
file. If population labels are provided, they should have the same length as inds
, and will be matched to them by position
Number of parts into which the genotype file is split. Lowering this number can speed things up, but will take more memory.
Genotypes of pseudohaploid samples are usually coded as 0
or 2
, even though only one allele is observed. adjust_pseudohaploid
ensures that the observed allele count increases only by 1
for each pseudohaploid sample. If TRUE
(default), samples that don't have any genotypes coded as 1
among the first 1000 SNPs are automatically identified as pseudohaploid. This leads to slightly more accurate estimates of f-statistics. Setting this parameter to FALSE
is equivalent to the ADMIXTOOLS inbreed: NO
option. Setting adjust_pseudohaploid
to an integer n
will check the first n
SNPs instead of the first 1000 SNPs.
Print progress updates
A list with three data frames: allele frequency data, allele counts, and SNP metadata
if (FALSE) {
afdat = eigenstrat_to_afs(prefix, pops = pops)
afs = afdat$afs
counts = afdat$counts
}