91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行R語言用DNA序列做主成分的分析

發布時間:2021-11-22 15:47:53 來源:億速云 閱讀:308 作者:柒染 欄目:大數據

這篇文章將為大家詳細講解有關如何進行R語言用DNA序列做主成分的分析,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

之前也有人留言問過如何用DNA序列做主成分分析,當時我也不知道,但是大體有一個思路 就是先比對,然后把比對的數據轉換成通常用的snp數據應該就可以了,但是也僅限于思路,完全不知道如何操作,今天坐車回家,路上無聊,翻了一下電腦上保存的一些資料,發現了一個辦法:可以借助R語言的adegenet包,用到的函數是fasta2genlight()

 fasta2genlight()函數的只要作用

The function fasta2genlight extracts SNPs from alignments with fasta format. 從比對好的fasta文件中提取snp數據

 下面開始實際操作

adegenet這個包第一使用需要先安裝,直接運行如下命令

install.packages("adegenet")
 

今天的推文使用的數據集是這個包的內置數據集,首先是獲取這個數據集的存儲路徑

dfpath<-system.file("files/usflu.fasta",package="adegenet")
dfpath
   加載包讀入數據
library(adegenet)
flu<-fasta2genlight(dfpath,chunkSize = 10,parallel = F)
flu
   

數據讀入以后做一些分析就比較容易了

 首先是看一下snp位點在染色體上的分布密度
library(ggplot2)
snpposi.plot(position(flu),genome.size = 1700,codon = F)+
  theme_bw()
 
如何進行R語言用DNA序列做主成分的分析  
image.png
 還可以劃分不同的密碼子位置
snpposi.plot(position(flu),genome.size = 1700,codon = T)+
  theme_bw()
 
如何進行R語言用DNA序列做主成分的分析  
image.png

這個圖如果分面畫成山脊圖的形式可能會更好看,但是自己目前還不知道如何實現

 還能夠檢測snp在染色體上是否分布均勻
snpposi.test(position(flu),genome.size = 1700)
 

這一步的時間可能會比較長如何進行R語言用DNA序列做主成分的分析

 接下來是做主成分分析了
df.pca<-glPca(flu,nf=3)  
df.pca.scores<-as.data.frame(df.pca$scores)  
df.pca.scores
   
自己隨便構造一個分組信息,然后用散點圖加置信橢圓的方式展示結果
df.pca.scores$population<-ifelse(df.pca.scores$PC1>0,"pop1",
                                 ifelse(df.pca.scores$PC2>1,"pop2","pop3"))
library(ggplot2)
ggplot()+
  geom_point(data=df.pca.scores,
             size=2,
             aes(x=PC1,y=PC2,
                 color=population))+
  theme_bw()+
  stat_ellipse(data=df.pca.scores,
               aes(x=PC1,y=PC2,fill=population),
               geom = "polygon",alpha=0.2,lty="dashed",color="black")
 
如何進行R語言用DNA序列做主成分的分析  
image.png

關于如何進行R語言用DNA序列做主成分的分析就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平遥县| 江口县| 万源市| 六安市| 兴国县| 遵义市| 炉霍县| 通山县| 乌兰浩特市| 贵定县| 繁昌县| 新龙县| 石景山区| 巫山县| 怀安县| 伊川县| 航空| 青海省| 化隆| 桑植县| 谢通门县| 海兴县| 澄城县| 巴东县| 雷州市| 洪江市| 山东省| 汝州市| 桓台县| 贵定县| 黑山县| 奉化市| 宁国市| 乌鲁木齐市| 姚安县| 大关县| 巴彦县| 丰镇市| 麻城市| 寿阳县| 云龙县|