COSMIC,即:Catalogue Of Somatic Mutations In Cancer。官网:
https://cancer.sanger.ac.uk/cosmic
注意事项:
- Cosmic 数据库从 v71 版本开始,学术研究免费(需要学校或研究机构的邮箱注册),而商业使用需要授权
- 目前数据库有基于 CRCh37 和 CRCh38 两种版本,根据需要选择合适的,步骤:进入主页 > 找到 Genome Version 菜单,选择:CRCh37 或 CRCh38
在主页的Help栏目下,点击Downloads
进入下载页面,往下拉,找到需要下载的文件。有两种下载方式:一种是浏览器下载,另一种是命令行下载,这里介绍第二种。
生成认证字符串
通过命令行下载之前,需要先生成一个授权码,其实就是将注册邮箱和密码用base64
命令进行编码。命令如下:
echo "email@example.com:mycosmicpassword" | base64
运行该命令后得到这样一个字符串:ZW1haWxAZXhhbXBsZS5jb206bXljb3NtaWNwYXNzd29yZAo=,就是后续要用到的授权码,该编码与邮箱和密码一一对应,如果邮箱或密码改变了,该编码需要重新生成。
注意:此文中出现的授权码是模拟的,不能直接使用,要到 Cosmic 网站注册账号获得授权。
下载 COSMIC 记录数据库
有了授权码之后,下载文件总是分两步:
- 获得真实的下载地址
- 根据真实地址下载文件
运行以下curl
命令,会返回一个json
文件,该文件包含了要下载的文件的真实地址,再通过curl
命令下载,得到的CosmicMutantExport.tsv.gz
即是需要的 Cosmic 记录数据库。
# 获得下载链接
curl -H "Authorization: Basic ZW1haWxAZXhhbXBsZS5jb206bXljb3NtaWNwYXNzd29yZAo=" https://cancer.sanger.ac.uk/cosmic/file_download/GRCh37/cosmic/v95/CosmicMutantExport.tsv.gz
# {"url":"https://cog.sanger.ac.uk/cosmic/GRCh37/cosmic/v95/CosmicMutantExport.tsv.gz?AWSAccessKeyId=KRV7P7QR9DL41J9EWGA2&Expires=1649402469&Signature=Nc/fbbfebR1fxnivfliUzphu/KM="}
# 下载数据文件
curl "https://cog.sanger.ac.uk/cosmic/GRCh37/cosmic/v95/CosmicMutantExport.tsv.gz?AWSAccessKeyId=KRV7P7QR9DL41J9EWGA2&Expires=1649402469&Signature=Nc/fbbfebR1fxnivfliUzphu/KM=" -o CosmicMutantExport.tsv.gz
下载编码区突变文件
代码语言:javascript复制# 获得下载链接
curl -H "Authorization: Basic ZW1haWxAZXhhbXBsZS5jb206bXljb3NtaWNwYXNzd29yZAo=" https://cancer.sanger.ac.uk/cosmic/file_download/GRCh37/cosmic/v95/VCF/CosmicCodingMuts.normal.vcf.gz
# {"url":"https://cog.sanger.ac.uk/cosmic/GRCh37/cosmic/v95/VCF/CosmicCodingMuts.normal.vcf.gz?AWSAccessKeyId=KRV7P7QR9DL41J9EWGA2&Expires=1649407741&Signature=kxSjw4IXSq/pNdvd49wa7FAfVF8="}
# 下载数据文件
curl "https://cog.sanger.ac.uk/cosmic/GRCh37/cosmic/v95/VCF/CosmicCodingMuts.normal.vcf.gz?AWSAccessKeyId=KRV7P7QR9DL41J9EWGA2&Expires=1649407741&Signature=kxSjw4IXSq/pNdvd49wa7FAfVF8=" -o CosmicCodingMuts.normal.vcf.gz
下载非编码区突变文件
代码语言:javascript复制# 获得下载链接
curl -H "Authorization: Basic ZW1haWxAZXhhbXBsZS5jb206bXljb3NtaWNwYXNzd29yZAo=" https://cancer.sanger.ac.uk/cosmic/file_download/GRCh37/cosmic/v95/VCF/CosmicNonCodingVariants.normal.vcf.gz
# {"url":"https://cog.sanger.ac.uk/cosmic/GRCh37/cosmic/v95/VCF/CosmicNonCodingVariants.normal.vcf.gz?AWSAccessKeyId=KRV7P7QR9DL41J9EWGA2&Expires=1649409695&Signature=5Sr+EfCDmE2771frmvsIdn+TBAk="}
# 下载数据文件
curl "https://cog.sanger.ac.uk/cosmic/GRCh37/cosmic/v95/VCF/CosmicNonCodingVariants.normal.vcf.gz?AWSAccessKeyId=KRV7P7QR9DL41J9EWGA2&Expires=1649409695&Signature=5Sr+EfCDmE2771frmvsIdn+TBAk=" -o CosmicNonCodingVariants.normal.vcf.gz
制作 Annovar 使用的数据库
以上操作,获得 3 个压缩文件:
- CosmicMutantExport.tsv.gz
- CosmicCodingMuts.normal.vcf.gz
- CosmicNonCodingVariants.normal.vcf.gz
至于为什么要下载这 3 个文件,请看 Annovar 官方网站的介绍:
https://annovar.openbioinformatics.org/en/latest/user-guide/filter/#cosmic-annotations
先解压:
代码语言:javascript复制gunzip -c CosmicMutantExport.tsv.gz > CosmicMutantExport.tsv
gunzip -c CosmicCodingMuts.normal.vcf.gz > CosmicCodingMuts.normal.vcf
gunzip -c CosmicNonCodingVariants.normal.vcf.gz > CosmicNonCodingVariants.normal.vcf
下载制作 Annovar 数据库的脚本:
代码语言:javascript复制wget http://www.openbioinformatics.org/annovar/download/prepare_annovar_user.pl
制作数据库:
代码语言:javascript复制# 制作编码区Cosmic数据库
perl prepare_annovar_user.pl --dbtype cosmic CosmicMutantExport.tsv -vcf CosmicCodingMuts.normal.vcf > hg19_cosmic95_coding.txt
# 排序,因为上述命令得到的数据库是无序的,按染色编号进行排序
sort -k1,1V -k2,2n -k3,3n hg19_cosmic95_coding.txt > hg19_cosmic95_coding_sort.txt
# 用排序后的数据库替换未排序的,hg19_cosmic95_coding.txt即为最终的编码区的Cosmic数据库,可供Annovar程序使用
mv hg19_cosmic95_coding_sort.txt hg19_cosmic95_coding.txt
# 制作非编码区的Cosmic数据库,跟编码区的一样
perl prepare_annovar_user.pl --dbtype cosmic CosmicMutantExport.tsv -vcf CosmicNonCodingVariants.normal.vcf > hg19_cosmic95_noncoding.txt
sort -k1,1V -k2,2n -k3,3n hg19_cosmic95_noncoding.txt > hg19_cosmic95_noncoding_sort.txt
mv hg19_cosmic95_noncoding_sort.txt hg19_cosmic95_noncoding.txt
制作数据库索引
通常,Annovar 的数据库如果比较大,需要先建立索引文件后再使用,但是对于 cosmic 数据库,官网有一句:
Users cannot index the file, but the file size is not too large, and you do not need to use indexing to use ANNOVAR.
就是,库不算大,不建索引也挻快,那就干脆省略这一步。
COSMIC 数据库的使用
运行以下命令测试:
代码语言:javascript复制perl $Bin/anno/annovar/table_annovar.pl XXXXXX.somatic.snvindel.pass.vcf $Bin/anno/annovar/humandb -buildver hg19 -outfile XXXXXX.somatic.snvindel.pass.annovar -protocol refGeneWithVer,exac03,clinvar_20220320,cosmic95_coding,dbnsfp42a -operation g,f,f,f,f -argument '--hgvs --exonicsplicing',,,, --gff3dbfile hg19_rmsk.gff -remove -nastring . -vcfinput
至此,即完成了 Cosmic 数据库的注释,可知:某体细胞突变,在此前文献中是否出现过,出现在什么癌种,出现了几次。结果如下:
代码语言:javascript复制ID=COSV58736910;OCCURENCE=2(thyroid)
ID=COSV100633201;OCCURENCE=1(skin)
ID=COSV58736947;OCCURENCE=1(large_intestine)
ID=COSV100633198;OCCURENCE=1(stomach)
ID=COSV58736924;OCCURENCE=1(thyroid)
ID=COSV58737059;OCCURENCE=2(skin)
The End。