PCA圖

plink --vcf test.vcf --pca 47 header tabs var-wts --out pca --allow-extra-chr
#--vcf test.vcf 群體SNP的VCF文件
#--pca 47 進行PCA分析,保留前47個主成分
#header tabs var-wts 輸出結(jié)果保留頭文件
#--out pca 輸出結(jié)果文件的前綴
#--allow-extra-chr 染色體設(shè)置
#結(jié)果文件為pca.eigenval,pca.eigenvec
#R畫圖
library(ggplot2)###加載R包ggplot2
library(readr)
library(dplyr)
pca <- read_delim("E:/SNP數(shù)據(jù)處理/pca.eigenvec", 
                  "\t", escape_double = FALSE, trim_ws = TRUE)
pca <-dplyr::select(pca,FID,PC1,PC2,PC3,PC4)###提取這幾列
PCA_DATA <- left_join(pca,group,by = c('FID'='code'))###group文件是分組文件
data<-read.table(file="PCA_DATA",header=T,sep="\t")###讀取各主成分數(shù)據(jù)
data2<-read.table(file="E:/SNP數(shù)據(jù)處理/pca.eigenval",header=F,sep="\t")###讀取各主成分貢獻度數(shù)據(jù)
data3<-data2[c(1:(nrow(data2)-1)),]
PC1contri<-round(data3[1]*100/sum(data3),digits=2)###PC1的貢獻率
PC2contri<-round(data3[2]*100/sum(data3),digits=2)###PC2的貢獻率xlab<-paste("PC1(",PC1contri,"%)",sep="")(###設(shè)置X軸坐標標簽)
ylab<-paste("PC2(",PC2contri,"%)",sep="")###設(shè)置Y軸坐標標簽
p <- ggplot(PCA_DATA,aes(x=PC1,y=PC2,color=number_of_ear_rows,shape=naked_or_hulled)) + geom_point() + labs(x=xlab,y=ylab)
p
##將naked改成hulless
colnames(PCA_DATA) <- c("IID","PC1","PC2","PC3","PC4","number_of_ear_rows","hulless_or_hulled")#改列名
PCA_DATA$hulless_or_hulled[which(PCA_DATA$hulless_or_hulled =='naked')]<- 'hulless'#把hulless or hulled 那一列的naked改成hulless
p <- ggplot(PCA_DATA,aes(x=PC1,y=PC2,color=number_of_ear_rows,shape=hulless_or_hulled)) + geom_point() + labs(x=xlab,y=ylab)#畫圖
p
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容