一行命令批量修改染色體和位置為RS號


鑒於太多人問我怎么批量根據chr:pos查找RS號,在這里出一個教程。

注意以下教程展示的是修改hg19基因組版本的RS號,如果你的數據是其他版本的,請修改為對應版本的數據。

假定數據是test.txt,內容如下:

現在希望根據第一列chr:pos找到對應的RS號,實現以下的效果:

則可以用dplyr::left_join參數,具體實現過程如下所示:

install.packages(dplyr)
library(dplyr)
tes = read.table("test.txt",header=T,check.names=F,sep="\t") #注意這里我設置的是制表符分隔符,如果你的文件不是制表符的話,需要修改成對應的分隔符
match = read.table("snp150_hg19.txt",header=T,check.names=F,sep="\t") 
need=dplyr::left_join(tes,match,by="chromosome:start") #如果snp150_hg19.txt文件中有對應的RS號,則比對到test.txt文件中,如果沒有的話,就變為NA
write.table(need, file ="clean.txt", sep ="\t", row.names =FALSE, col.names =TRUE, quote =FALSE) #保存文件

上述命令需要用到snp150_hg19.txt文件,其內容如下所示:

snp150_hg19.txt文件可以從https://hgdownload.soe.ucsc.edu/downloads.html網站 下載,也可以通過后台回復RS號修改獲取,下載后請解壓后再使用;

這個文件很大,總共有234104111個位點,解壓后5G左右,只能通過網盤傳輸;

另外,我也提供了hg38的基因組版本snp151_hg38.txt.gz,需要的同樣后台回復RS號修改

由於本人只做人類,所以只提供了人類基因組版本的教程,做其他物種的小伙伴們需要自行從https://hgdownload.soe.ucsc.edu/downloads.html網站 下載。


致謝橙子牛奶糖(陳文燕),請用參考模版:We thank the blogger (orange_milk_sugar, Wenyan Chen) for XXX

感謝小可愛們多年來的陪伴, 我與你們一起成長~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM