snpgdsAdmixPlot | R Documentation |
Plot the admixture proportions according to their ancestries.
snpgdsAdmixPlot(propmat, group=NULL, col=NULL, multiplot=TRUE, showgrp=TRUE,
shownum=TRUE, ylim=TRUE, na.rm=TRUE)
snpgdsAdmixTable(propmat, group, sort=FALSE)
propmat |
a sample-by-ancestry matrix of proportion estimates,
returned from |
group |
a character vector of a factor according to the rows
in |
col |
specify colors; if |
multiplot |
single plot or multiple plots |
showgrp |
show group names in the plot; applicable when |
shownum |
|
ylim |
|
na.rm |
|
sort |
|
The minor allele frequency and missing rate for each SNP passed in
snp.id
are calculated over all the samples in sample.id
.
snpgdsAdmixPlot()
: none.
snpgdsAdmixTable()
: a list of data.frame
consisting of
group, num, mean, sd, min, max
Xiuwen Zheng
Zheng X, Weir BS. Eigenanalysis on SNP Data with an Interpretation of Identity by Descent. Theoretical Population Biology. 2015 Oct 23. pii: S0040-5809(15)00089-1. doi: 10.1016/j.tpb.2015.09.004.
snpgdsEIGMIX
, snpgdsAdmixProp
# open an example dataset (HapMap)
genofile <- snpgdsOpen(snpgdsExampleFileName())
# get population information
# or pop_code <- scan("pop.txt", what=character())
# if it is stored in a text file "pop.txt"
pop_code <- read.gdsn(index.gdsn(genofile, "sample.annot/pop.group"))
# get sample id
samp.id <- read.gdsn(index.gdsn(genofile, "sample.id"))
# run eigen-analysis
RV <- snpgdsEIGMIX(genofile)
# define groups
groups <- list(CEU = samp.id[pop_code == "CEU"],
YRI = samp.id[pop_code == "YRI"],
CHB = samp.id[is.element(pop_code, c("HCB", "JPT"))])
prop <- snpgdsAdmixProp(RV, groups=groups, bound=TRUE)
# draw
snpgdsAdmixPlot(prop, group=pop_code)
# use user-defined colors for the groups
snpgdsAdmixPlot(prop, group=pop_code, multiplot=FALSE, col=c(3,2,4))
snpgdsAdmixTable(prop, group=pop_code)
# close the genotype file
snpgdsClose(genofile)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.