Description Usage Arguments Details Value Author(s) References See Also Examples
Produces wavelet summaries for each individual and group. Returns the wavelet variance and average block size metric (ABS).
1 2 |
x |
object of class |
populations |
list containing a vector of individual IDs for each population in the analysis. |
popA |
name of ancestral population 1 (used for forming the axes of variation). Must match one of the names in |
popB |
name of ancestral population 2 (used for forming the axes of variation). Must match one of the names in |
ml |
number of wavelet scales in the decomposition. Must not exceed log_2(T), where T is the length of the signal. |
type |
name of the wavelet to use in the decomposition. The default, “la8”, is Daubechies Least Asymmetric wavelet of length 8. Other options include “haar”. |
t.factor |
multiplicative factor for thresholding. See paper for details. Default is 1. |
fullWT |
if |
Produces wavelet summaries for objects of class adsig
. The function computes the wavelet variance for each individual and population, extracts the informative wavelet variance based on levels observed in the ancestral populations, and computes summary measures of average block size metric (ABS) and peak wavelet scale for each individual and population.
See waveslim
documentation for details of the modwt
function and alternative wavelet options.
The code returns a list with the following components:
n.ind |
number of individuals in the analysis. |
n.group |
number of groups in the analysis. |
rv.ind |
matrix of dimension n x ml, returning the raw wavelet variance for each individual. |
rv.group |
matrix of dimension n.group x ml, returning the raw wavelet variance for each group. |
threshold |
vector of length ml, returning threshold values for each wavelet scale. |
iv.ind |
matrix of dimension n x ml, returning the informative (thresholded) wavelet variance for each individual. |
iv.group |
matrix of dimension n.group x ml, returning the informative (thresholded) wavelet variance for each group. |
abs.ind |
vector of length n, returning the average block size metric (ABS) for each individual. |
abs.group |
vector of length |
pws.ind |
vector of length n, returning the peak wavelet scale for each individual. |
pws.group |
vector of length |
wtmatrix |
(only if |
wtmatrix.group |
(only if |
Jean Sanderson
Sanderson J, H Sudoyo, TM Karafet, MF Hammer and MP Cox. 2015. Reconstructing past admixture processes from local genomic ancestry using wavelet transformation. Genetics 200:469-481. https://doi.org/10.1534/genetics.115.176842
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | data(admix)
# Generate the admixture signal
AdexPCA <- signal(admix$data,popA="popA",popB="popB",populations=admix$populations,
tol=0.001, n.signal=NULL)
# Compute wavelet summaries
WSN <- wavesum(AdexPCA,populations=admix$populations,popA="popA",popB="popB")
# Plot raw wavelet variance for each population
barplot(WSN$rv.group[3,],ylim=c(0,0.9),col="red", names.arg=1:11,border=NA)
barplot(WSN$rv.group[1,],ylim=c(0,0.9),col="green3",names.arg=1:11,border=NA,add=TRUE)
barplot(WSN$rv.group[2,],ylim=c(0,0.9),col="blue", names.arg=1:11,border=NA,add=TRUE)
legend("topright",c("popA","popB","popAB"),col=c(3,4,2),pch=15)
box()
# Plot informative wavelet variance for admixed population
barplot(WSN$iv.group[3,],ylim=c(0,0.15),col="red",names.arg=1:11,border=NA)
ABS <- round(WSN$abs.group[3],2)
text(11,0.13,paste("ABS=",ABS))
box()
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.