请指导我使用biosmalltalk(Pharo版)将GenBank序列转换为等效的FASTA格式。我已经想通过磁盘读取GenBank文件: |文件x y m | x:=时间millisecondClockValue。 file:= BioFile on:(FileStream readOnlyFileNamed:BioObject testFilesDirectoryName asFileReference /'AF165912.gbk')。 m:= BioParser tokenizeMultiFasta:文件内容。 y:=时间millisecondClockValue。 抄录打开。 成绩单明确。 成绩单显示:m; cr。 现在我想要得到它的FASTA等价物。请帮助我从磁盘读取genbank文件并将其转换为fasta
回答
GenBank格式是(应该是)人类可读的格式,但它不是很容易解析。当XML格式不可用或者完全不能使用时,已经花费了大量的努力,并且仍然在编程库中解析平坦的GenBank格式。 BioSmalltalk背后的目标之一就是关注复杂性降低,这意味着使用正确的工具。出于这个原因,GenBank平面分析器不包含在内,希望能够支持使用GenBank XML format。
来试用先安装在清洁Pharo 3.0最新BioSmalltalk评估以下命令:
$ pharo Pharo.image "config" "http://smalltalkhub.com/mc/hernan/BioSmalltalk" "ConfigurationOfBioSmalltalk" --printVersion --install=development
或从图像中的等价:
Gofer it
smalltalkhubUser: 'hernan' project: 'BioSmalltalk';
configuration;
loadDevelopment.
为了解析基因库XML格式的文件,我强烈建议您以可重现的方式重新下载XML格式的文件。如果您从NCBI下载了您的文件,您可以使用Entrez e-Utils BioSmalltalk客户端(目前NCBI从网页中删除了XML下载选项):
以下脚本以XML格式下载两个GenBank记录,序列定义和序列字符串,并以FASTA格式导出它们。该序列位于GBSeq_sequence节点中。
| gbReader fastaCollection seqsWithDefs |
fastaCollection := BioFastaMultiRecord new.
gbReader := (BioEntrezClient new nuccore
uids: #(57240072 57240071);
setModeXML;
fetch) reader.
seqsWithDefs := gbReader
selectNodes: #('GBSeq_definition' 'GBSeq_sequence')
in: gbReader contents.
(seqsWithDefs at: 'GBSeq_definition') with: (seqsWithDefs at: 'GBSeq_sequence') do: [ : defs : seqs |
fastaCollection addFastaRecord: (BioFastaRecord named: defs value sequence: seqs value) ].
BioFASTAFormatter new exportFrom: fastaCollection sequences.
如果你开始与Smalltalk中,记得你有纯净的对象,几乎一切都可以通过检查/ Explorer的工具被发现。
尊敬的埃尔南,感谢您的宝贵意见。但我有点不同。正如我们可以使用BioPerl或BioJava等几种脚本语言在磁盘上转换GenBank文件: – 2014-09-29 17:31:50
亲爱的Hernán,感谢您的宝贵意见。但我有点不同。正如我们可以通过使用几种脚本语言(如BioPerl或BioJava)在磁盘上转换GenBank文件。我希望我也可以使用Biosmalltalk来做同样的事情。顺便说一句,我目前使用的是BioSmalltalk 0.5。我使用的BioPerl代码如下所示:my $ infilename ='AF165912.gbk'; my $ outfilename ='out_PerlAF165912.fa'; #读取序列数组 @seq_object_array = read_all_sequences($ infilename,'genbank'); write_sequence(“> $ outfilename”,'fasta',@seq_object_array);谢谢你的帮助。 – 2014-09-29 17:54:27
- 1. 将GenBank平台文件转换为FASTA
- 2. 如何将.txt文件转换为jar并将其读取
- 3. 从资源中读取文件并将其写入到C#中的磁盘中
- 4. 从本地磁盘读取文件
- 5. Ionic 2 - 读取.wav文件并将其转换为基本64
- 6. 从文本文件读取指数数字并将其转换为INT64在vC++
- 7. 从磁盘缓冲读取
- 8. 从磁盘读取和EINTR
- 9. 从tsv转换为fasta
- 10. 如何使用Jena从HDFS读取文件并将其转换为Rdf?
- 11. 我可以使用Webassembly从磁盘读取文件吗?
- 12. 从webelement读取字符串,并将其转换为小数点
- 13. 阅读文本文件并将其转换为对象
- 14. 阅读文本文件,并将其转换为字符对象
- 15. Java帮助从文件读取
- 16. 解析并将xls文件(从GET请求接收到的URL)转换为JSON而不写入磁盘
- 17. 如何从磁盘读取图像并阻塞直到其读取?
- 18. 将字节数组转换为文件而不将文件写入磁盘
- 19. Java - 读取键盘输入并将其写入文本文件
- 20. Cocoa Objective C - 如何将图像数组转换为视频文件并将其保存到磁盘?
- 21. 读取较快文件及将其转换为十六进制
- 22. 将PDF转换为文本并从android中读取
- 23. 如何将两列的文本文件转换为fasta格式
- 24. 保存并读取磁盘上的文件
- 25. 返回数据帧vs写入磁盘并从磁盘读取csv的效率
- 26. anyOne可以帮助我将这些从openGLES1.1转换为openGLES2.0吗?
- 27. Ruby - 从URL获取图像并将其转换为文本
- 28. 通过FileReader Api读取文件并将其转换为json对象
- 29. 用boto3读取avro文件并将其转换为字符串(Python)
- 30. 使用字符串输入读取csv文件并将其转换为列表
欢迎来到Stack Overflow!出于某种原因,您在注册为新用户时选择不参加[Tour](http://stackoverflow.com/tour);请尽快这样做。就像这样,你的问题不在堆栈溢出的主题上。请阅读[我可以询问什么主题?](http://stackoverflow.com/help/on-topic)和[我如何提出一个好问题?](http://stackoverflow.com/help/how -to-问)。 – usr2564301 2014-09-26 09:56:07