Hi! I am conducting a GWAS. I used plink 1.9 (--pca) to obtain first 10 population principal components which I entered in the regression model as covariates to correct for population stratification. I would like to the use the .eigenvec file, which is the output from plink --pca containing population principal components, to summarize the population structure and look for potential heterogeneity. I would be super grateful if anyone could help or refer me to a practical tutorial. Thanks a lot!
You know for sure that you need to include all 10 principal components as covariates? One should only include the principal components that are actually segregating your groups of interests and that are therefore likely to affect the statistical inferences that you make from your data. This is 'adjusting' for population stratification.
.eigenvec file, one can easily generate a principal components bi-plot for any pairwise combination of PCs:
R setwd("/YourDir/") options(scipen=100, digits=3) #Read in the eigenvectors eigen <- data.frame(read.table("plink.eigenvec", header=FALSE, skip=0, sep=" ")) rownames(eigen) <- eigen[,2] eigen <- eigen[,3:ncol(eigen)] summary(eigen) #Determine the proportion of variance of each component proportionvariances <- ((apply(eigen, 1, sd)^2) / (sum(apply(eigen, 1, sd)^2)))*100 plot(eigen[,1], eigen[,2]) legend("topleft", bty="n", cex=1.5, title="", c("African","Hispanic","East Asian","Caucasian","South Asian"), fill=c("yellow","forestgreen","grey","royalblue","black"))