本脚本适用于GAPIT产生的GWAS结果:
library(dplyr) #子集的包
tmp<-data.frame() #创建空的数据集
myfiles <- Sys.glob("GAPIT*.Results.csv") #搜索文件夹内所有的gwas结果文件
print(paste(myfiles,"has been found")) #显示所有找到的结果文件
for(i in myfiles) #循环开始
{new_trait<-read.csv(file=i,header = TRUE,sep = ",") #读取文件
newdata <- subset(new_trait, P.value < 1e-6) #筛选pvalue列中小于1e-6的行,提取至新的文档newdata
newdata$trait<-i #创建新的列,标注该表型名称
tmp<-rbind(tmp,newdata) #与之前的文件合并
}
汇总文件在tmp中,输出为csv即可。
提取的仅仅是显著位点(阈值自己调整)
网友评论