全基因組關(guān)聯(lián)分析(GWAS)實(shí)操

全基因組關(guān)聯(lián)分析(GWAS)實(shí)操

數(shù)據(jù)及代碼來源:GWAS_in_R下面所用數(shù)據(jù)均可在此鏈接下載放椰,作者為githubwhussain2

1.表型數(shù)據(jù)的讀取

設(shè)置工作目錄

rm(list=ls())

setwd("G:\\GWAS\\R-for-Plant-Breeding-master\\GWAS_in_R")

讀取水稻表型數(shù)據(jù)

> rice.pheno <-read.table("./datafiles/RiceDiversity_44K_Phenotypes_34traits_PLINK.txt",header=TRUE,stringsAsFactors =FALSE,sep ="\t")

#選擇適當(dāng)?shù)牧?/p>

>rice.pheno <- rice.pheno[,c(2,3,14)]

#將 NSFTV_ 粘貼到每個基因型名稱前

>?rice.pheno$NSFTVID <- paste0("NSFTV_",rice.pheno$NSFTVID)

刪除不存在數(shù)據(jù)的項(xiàng)

> rice.pheno <- na.omit(rice.pheno)

檢查數(shù)據(jù)的維度

> dim(rice.pheno)

?讀取標(biāo)記數(shù)據(jù)

從.ped文件中讀取基因型信息

> Geno <- read_ped("./datafiles/sativas413.ped")

此時可能會報錯

Error in read_ped("./datafiles/sativas413.ped") :

could not find function "read_ped"沒有發(fā)現(xiàn)函數(shù)read_ped

安裝R包BGLR可解決問題

>install.packages('BGLR')

載入包

>library(BGLR)

>Geno<-read_ped("./datafiles/sativas413.ped")

>p=Geno$p

>n=Geno$n

>Geno=Geno$x

從.fam文件中載入基因型和編號

>FAM <- read.table("./datafiles/sativas413.fam")

從.map文件中讀取數(shù)據(jù)

>MAP <- read.table("./datafiles/sativas413.map")

在.map文件中重新編碼標(biāo)記數(shù)據(jù)

> Geno[Geno ==2]<- NA

> Geno[Geno ==3] <- 2

將標(biāo)記數(shù)據(jù)轉(zhuǎn)換為矩陣并轉(zhuǎn)置并檢查尺寸

> Geno<-matrix(Geno,nrow = p,ncol = n,byrow = TRUE)

> Geno <-t(Geno)

> dim(Geno)

將行名和列名分配給標(biāo)記文件

> colnames(Geno)<-MAP$V2

添加存儲在第二列中的行名并將 NSFTV_ID_ 粘貼到每個行名

> row.names(Geno)<-paste0("NSFTV_",FAM$V2)

2.數(shù)據(jù)過濾

2.1 標(biāo)記數(shù)據(jù)質(zhì)控

2.1.1?SNP cal rate

檢查 snps 的缺失百分比

>miss_snp<- data.frame(SNPs=apply(Geno,2,function(x){ sum(is.na(x))/nrow(Geno)*100}))

繪制缺失數(shù)據(jù)的直方圖

>hist(miss_snp$SNPs,col = "lightblue",xlab = paste("Missing Percenatge"),ylab = "Proportion of markers",main = NULL)


標(biāo)記大于 25% 的缺失數(shù)據(jù)

> mrt<-which(miss_snp>25)

從原始文件中刪除這些標(biāo)記并保存

> Geno<-Geno[,-c(mrt)]

> dim(Geno)

>missing_markers<-subset(miss_snp, SNPs>25)

2.1.2 Genotype Call Rate


檢查樣本中的缺失百分比

> miss_geno<-data.frame(Genotypes=apply(Geno, 1, name <- function(x) {sum(is.na(x))/ncol(Geno)*100 }))

查看條形圖设塔,以便更好地可視化樣本中的缺失數(shù)據(jù)

> hist(miss_geno$Genotypes,col = "lightblue",ylab = "Proportion of genotypes",xlab = "Missing Percenatge",main = NULL)


識別缺失數(shù)據(jù)超過 15% 的樣本

> gen<-which(miss_geno>15)

> Geno<-Geno[-c(gen),]

> dim(Geno)

被丟棄的樣本列表

> missing_genotypes<-subset(miss_geno,Genotypes>15)

> head(missing_genotypes)

? ? ? ? ? Genotypes

NSFTV_72? ?15.97425

NSFTV_194? 16.60705

NSFTV_252? 18.38992

NSFTV_260? 17.04452

2.1.3檢查樣本間的雜合性

獲得雜合百分比

> htero_geno<-data.frame(htr=apply(Geno,1,function(x){(sum((x==1),na.rm = TRUE)/ncol(Geno)*100)}))

使用條形圖和直方圖進(jìn)行可視化

> par(mfrow=c(1,2))

> barplot(htero_geno$htr,xlab = "Genotypes",ylab = "Heterozygosity percentage",col = "darkblue")

> hist(htero_geno$htr,xlab = "Heterozygosity percentage",ylab = "Proportion of genotypes",col = "lightblue",main= NULL)


> htrg<-which(htero_geno>4)

> Geno<-Geno[-c(htrg),]

列出被刪除的基因型列表

> htrg<-subset(htero_geno,htr>4)

> dim(Geno)



寫在最后

明天繼續(xù)看看根據(jù)代碼重現(xiàn)修赞。從前看山是山,看水是水燃乍,現(xiàn)在看山還是山,看水還是水宛琅,沒有一點(diǎn)點(diǎn)改變刻蟹,似乎隨著時間的流逝,增長的只是我的年齡嘿辟。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末舆瘪,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子红伦,更是在濱河造成了極大的恐慌介陶,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,252評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件色建,死亡現(xiàn)場離奇詭異哺呜,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)箕戳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評論 3 399
  • 文/潘曉璐 我一進(jìn)店門某残,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人陵吸,你說我怎么就攤上這事玻墅。” “怎么了壮虫?”我有些...
    開封第一講書人閱讀 168,814評論 0 361
  • 文/不壞的土叔 我叫張陵澳厢,是天一觀的道長环础。 經(jīng)常有香客問我,道長剩拢,這世上最難降的妖魔是什么线得? 我笑而不...
    開封第一講書人閱讀 59,869評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮徐伐,結(jié)果婚禮上贯钩,老公的妹妹穿的比我還像新娘。我一直安慰自己办素,他們只是感情好角雷,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,888評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著性穿,像睡著了一般勺三。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上需曾,一...
    開封第一講書人閱讀 52,475評論 1 312
  • 那天檩咱,我揣著相機(jī)與錄音,去河邊找鬼胯舷。 笑死刻蚯,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的桑嘶。 我是一名探鬼主播炊汹,決...
    沈念sama閱讀 41,010評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼逃顶!你這毒婦竟也來了讨便?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,924評論 0 277
  • 序言:老撾萬榮一對情侶失蹤以政,失蹤者是張志新(化名)和其女友劉穎霸褒,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體盈蛮,經(jīng)...
    沈念sama閱讀 46,469評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡废菱,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,552評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了抖誉。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片殊轴。...
    茶點(diǎn)故事閱讀 40,680評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖袒炉,靈堂內(nèi)的尸體忽然破棺而出旁理,到底是詐尸還是另有隱情,我是刑警寧澤我磁,帶...
    沈念sama閱讀 36,362評論 5 351
  • 正文 年R本政府宣布孽文,位于F島的核電站驻襟,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏芋哭。R本人自食惡果不足惜沉衣,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,037評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望楷掉。 院中可真熱鬧厢蒜,春花似錦霞势、人聲如沸烹植。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽草雕。三九已至,卻和暖如春固以,著一層夾襖步出監(jiān)牢的瞬間墩虹,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評論 1 274
  • 我被黑心中介騙來泰國打工憨琳, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留诫钓,地道東北人。 一個月前我還...
    沈念sama閱讀 49,099評論 3 378
  • 正文 我出身青樓篙螟,卻偏偏與公主長得像菌湃,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子遍略,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,691評論 2 361

推薦閱讀更多精彩內(nèi)容