liftOver进行不同版本染色体位置转换
人类基因组计划启动20年,目前出了很多基因组版本
2013年的GRCh38/hg38 (最新)
2009年的GRCh37/hg19 (常用)
2006年的GRCh36/hg18 (最新)
2004年的GRCh35/hg17 (常用)
为了将不同版本的染色体上的位置一一对应,UCSC出了这款工具liftOver,官方定义是
This tool converts genome coordinates and genome annotation files between assemblies.
在线版
该工具有一个在线版本Lift Genome Annotations,在页面上选好物种(Original Genome:),转换前版本(Original Assembly:),新物种(New Genome:)和新版本(New Assembly:),然后在输入或者上传bed格式文件即可。最后结果会显示有多少数据成功转换,多少数据没有成功转换。
Linux版
Linux版本非常简单,此处以hg38>hg19和hg19>hg38为例
1.安装环境
Linux Ubuntu
2.工具下载
我下载的是linux.x86_64版本的,其他版本地址见The UCSC Genome Browser and Blat software
wget [http://hgdownload.cse.ucsc.edu/admin/exe/linux.x86_64/liftOver](http://hgdownload.cse.ucsc.edu/admin/exe/linux.x86_64/liftOver)
3.坐标注释文件下载
hg38Tohg19注释文件
hg19Tohg38注释文件
不需要解压
如果需要其他版本的注释文件,请见Sequence and Annotation Downloads,下载对应的liftOver注释文件即可。
4.Input文件
只接受BED格式文件,BED格式文件只定义前三列:chr start end,无表头
注:start不等于end(如果是单位点的话,建议所有end+1)
yangyang@DESKTOP-SGNIV47:/mnt/d/Work/liftover$ head hg38test.bed
chr1 3900238 3900239 C1orf174
chr1 25272497 25272498 RHD
chr1 25420837 25420838 RHCE
chr1 26023102 26023103 EXTL1
chr1 45004276 45004277 HECTD3
chr1 46188924 46188925 POMGNT1
chr1 53772442 53772443 NDC1
chr1 69834837 69834838 LRRC7
chr1 88786134 88786135 PKN2
chr1 110519119 110519120 KCNA10
yangyang@DESKTOP-SGNIV47:/mnt/d/Work/liftover$ head hg19test.bed
chr1 3816802 3816803 C1orf174
chr1 25598988 25598989 RHD
chr1 25747328 25747329 RHCE
chr1 26349593 26349594 EXTL1
chr1 45469948 45469949 HECTD3
chr1 46654596 46654597 POMGNT1
chr1 54238115 54238116 NDC1
chr1 70300520 70300521 LRRC7
chr1 89251817 89251818 PKN2
chr1 111061741 111061742 KCNA10
5.坐标转换
简单两个命令即可
1.将liftOver变为可执行文件
2.执行,参数为inputfile,over.chain.gz,outputfile,unmapfile(会输出没有对应上的行)
$ chmod +x ./filePath
$ ./filePath/utility_name
Example:
hg38>hg19
yangyang@DESKTOP-SGNIV47:/mnt/d/Work/liftover$ chmod +x liftOver
yangyang@DESKTOP-SGNIV47:/mnt/d/Work/liftover$ ./liftOver hg38test.bed hg38ToHg19.over.chain.gz hg38Tohg19.bed hg38Tohg19Unmap.bed
Reading liftover chains
Mapping coordinates
yangyang@DESKTOP-SGNIV47:/mnt/d/Work/liftover$ head hg38Tohg19.bed
chr1 3816802 3816803 C1orf174
chr1 25598988 25598989 RHD
chr1 25747328 25747329 RHCE
chr1 26349593 26349594 EXTL1
chr1 45469948 45469949 HECTD3
chr1 46654596 46654597 POMGNT1
chr1 54238115 54238116 NDC1
chr1 70300520 70300521 LRRC7
chr1 89251817 89251818 PKN2
chr1 111061741 111061742 KCNA10
hg19>hg38
yangyang@DESKTOP-SGNIV47:/mnt/d/Work/liftover$ chmod +x liftOver
yangyang@DESKTOP-SGNIV47:/mnt/d/Work/liftover$ ./liftOver hg19test.bed hg19ToHg38.over.chain.gz hg19Tohg38.bed hg19Tohg38Unmap.bed
Reading liftover chains
Mapping coordinates
yangyang@DESKTOP-SGNIV47:/mnt/d/Work/liftover$ head hg19Tohg38.bed
chr1 3900238 3900239 C1orf174
chr1 25272497 25272498 RHD
chr1 25420837 25420838 RHCE
chr1 26023102 26023103 EXTL1
chr1 45004276 45004277 HECTD3
chr1 46188924 46188925 POMGNT1
chr1 53772442 53772443 NDC1
chr1 69834837 69834838 LRRC7
chr1 88786134 88786135 PKN2
chr1 110519119 110519120 KCNA10