我在fasta中有5000个蛋白质序列的大文件,其中有假设的蛋白质和功能蛋白质,我如何将假设的蛋白质与假定的蛋白质分开。所以基本上假设的蛋白质在他们的标题中都有假设这个词,所以我希望我能用一些命令将它们分开。有没有人知道python或linux命令来做到这一点?像这样的事情
vir0002 BASYS00002,605-1000(顺时针)MobC蛋白 MPKPASDGAGSGCHVQAGVTSLPTEYPFDRRKSRMARTQTFTQEQLDKTKQALSELPDLS RNKIAKADFLESLKDQIVLLANTKGYSPAEIKSALAQVNVTVSVKSIADLLNTQGKRQPR KSADKKSNPTQ vir003 yubP,2257-1421(CounterClockwise)UPF0380蛋白yubP MQFSNSVRGPNMLRADHPLSNEQIASVAPSIFAAEAYESRSERYLYIPTVEVLDALREEG FEPFMASQTRVRNAGKIEHTKHMLRLRHSSSIMDKEADEIILLNSHDGSSSYQMMAGVFR FVCQNGLVIGDRSFDQKIRHSGNDDIKSDVIEGAYEVLDQFKAMSEQKECMKQIKLCADE QEAFATAALSYRYDPQEGPAPVTARQLLSPRRVEDYENDLWTTFNRIQENSIKGGLRGRN KSGRRATTRSVSGIDQDVKLNRALWTLAQELRGHLTTA vir004 BASYS00004,3593-2535(CounterClockwise)核酸酶 MHELSAEAASQLEALEKELESVQATIESLSDQDSEQSKALDIREDELEDEISKIQKSREG FALEVMPHAGAVISYYYGDLRINRGMVRTADRESVNAVLGEGERLAGGRETESAGRKSNT ISDALRRSLLGHRNLAAQFVTAANPKAAKMLIVCKWISDTRRNWSATPTDLSIGNGYGAR TGCPITDEAGRVREEEFVALGELLIEGLPTEYGDLWDALAALSEAEIDKLLAFAVARSVS LAVEDNVLSKKYVQTLGMKMEDHFVPTVGNYLGRVSKELIIEALKEARKIQSDEDQVTLL AMKKGALAAEAETRLMGTGWVPAEIATKPEELAQEKNSKKKKNSSKPATGKA vir005 yubM,4624-3506(CounterClockwise)无特征的蛋白质yubM MSLHVVTLMCVECITIPSALHRHRCPIRAAATAPGLPCRGFYMSNAYNTVVPFNRLRRSE ENVRRTGRASAHYKAGIKKLAASILSTHKQTGQGLLQNLVVHVNGENFDVAAGGRRYDAV SLLIEEGEFQADYPTACLVIDADAVTAASLTENVSREAMHPADELDAFKALTEQGWTIDS IPDSFGVTALVVERRLKVRAAAPALIEEYRLGALTTDQLIALCATDDHDRQLEVWNRLRQ QHWNNDPATLRRAVIKTEVESNDKRVTFIGGVEVYEAAGGEVRRDLFAEDGQGAFLSDSA LLDVLVETKLQEVGEQVRAEGWGWIEVWQQFDHTHTVWATHRRSCMSCQPKQLVSLKHWK RSLRAYRPPLRA vir006 BASYS00006,5844-5293(CounterClockwise)假定蛋白质PSPTOA MCPKLKAYHWQQGRHSPALNWKITVSAKNTDEQLLAMATKIKESYTPSEIAQLVRLISPT PNTGELSAEEFERVMQVLGSQNNRRPYSSKSVIAARLVLVMGASPSEAAKESGLARQNVS ELMLRIRKRMESLPQGWVKVSEWFPGEVAKQIGHISEALKDHHSAGKPLNELSFTIKLTG PTA
我希望有两个文件 一个包含
vir006 BASYS00006,5844-5293(CounterClockwise)假设蛋白PSPTOA MCPKLKAYHWQQGRHSPALNWKITVSAKNTDEQLLAMATKIKESYTPSEIAQLVRLISPT PNTGELSAEEFERVMQVLGSQNNRRPYSSKSVIAARLVLVMGASPSEAAKESGLARQNVS ELMLRIRKRMESLPQGWVKVSEWFPGEVAKQIGHISEALKDHHSAGKPLNELSFTIKLTG PTA 另一种含有其余的蛋白质序列
答案 0 :(得分:1)
Biopython有一个FASTA解析器应该能够做你想要的。获取和使用它的说明位于http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc11。
在http://www.petercollingridge.co.uk/python-bioinformatics-tools/fasta-parser,有一个简单的Python脚本,用于读取FASTA文件并将其转换为带有标题行(以>开头)作为键的字典。我没有在你的例子中看到这些。如何将文件中的标题与序列内容区分开来?
https://gamma2.wordpress.com/2014/01/03/reading-a-fasta-file-with-python/提供了用于编写上述相同类型脚本的逐步指令。对包含"假设蛋白质"的标题添加过滤是很容易的。或者,跳过散列并将标题+序列输出写入两个不同的文件,具体取决于标题是否匹配。
使用Ruby,bioruby类Bio :: Sequence :: Common和Bio :: FastaFormat具有很酷的功能。第一个是带有toFasta方法的mixin,用于以FASTA格式编写Bio :: Sequence对象。第二个可以作为Bio :: Sequence对象读取FASTA文件,并且有7个与FASTA头(定义行)相关的方法和6个与序列相关的方法。请参阅http://bioruby.open-bio.org/rdoc/Bio/Sequence/Common.html和http://bioruby.open-bio.org/rdoc/Bio/FastaFormat.html以及从http://bioruby.open-bio.org/wiki/SampleCodes#How_do_I_write_Sequences_in_Fasta_format.3F开始的示例程序。