NCBI Entrez direct序列处理小工具
「历史文章」那天是生信星球陪你的第307天
大神一句话,菜鸟跑半年。我不是大神,但我可以缩短你走弯路的半年~
就像歌儿唱的那样,如果你不知道该往哪儿走,就留在这学点生信好不好~
这里有豆豆和花花的学习历程,从新手到进阶,生信路上有你有我!
豆豆写于19.3.14
许多时候我们需要从NCBI下载数据或者仅仅是想找基因对应什么物种,几条序列直接搜索没问题,但是批量操作肯定存在更简单的办法
软件安装看这里
https://anaconda.org/bioconda/entrez-direct
更多使用可以看:http://www.ncbi.nlm.nih.gov/books/NBK179288/
具体使用
根据accession number下载基因序列
esearch -db nucleotide -query "NC_001552" | efetch -format fasta
根据taxon ID提取蛋白序列
esearch -db "protein" -query "txid3072[Organism]" | efetch -format fasta
根据bioproject下载序列
esearch -db bioproject -query "PRJNA285593" | elink -target nuccore|efetch -format fasta
从基因组中提取CDS序列
esearch -db protein -query 302315370| elink -target nuccore|efetch -format ft| grep -A 4 --no-group-separator CDS
esearch -db protein -query 302315370 | elink -target nuccore|efetch -format fasta_cds_na| grep YP_003815423.1
根据蛋白accession number提取taxon ID
esearch -db protein -query "NP_066243"| elink -target taxonomy |efetch -format uid
#use gi instead
esearch -db protein -query "10314000"| elink -target taxonomy |efetch -format uid
利用essumary提取taxon ID
esearch -db nucleotide -query "NC_001552"|esummary|grep TaxId
下载所有refseq蛋白序列
esearch -db "protein" -query "txid10239[Organism] AND refseq[filter]"|efetch -format fasta
根据基因组accession number获取蛋白信息
#下载序列
elink -db nucleotide -id JN420361.1 -target protein|efetch -format fasta
#获取GI号
elink -db nucleotide -id JN420361.1 -target protein|efetch -format uid
#获取accession number
elink -db nucleotide -id JN420361.1 -target protein|efetch -format acc
根据基因ID获取物种名(目测这还是个比较常用的需求,因为比对序列后需要统计有多少序列比对到什么物种,就可以批量操作)
cat genebank.name | while read i;do esearch -db protein -query $i| elink -target taxonomy |
efetch -format xml |xtract -pattern TaxaSet -element ScientificName|cut -f1 ;done
点击底部的“阅读原文”,获得更好的阅读体验哦😻
初学生信,很荣幸带你迈出第一步。
我们是生信星球,一个不拽术语、通俗易懂的生信知识平台。由于是2018年新号,竟然没有留言功能。需要帮助或提出意见请后台留言、联系微信或发送邮件到jieandze1314@gmail.com,每一条都会看到的哦~
请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!