1

我有 51 个包含宏基因组序列数据的文件,我想在 Windows 中使用 Biopython 脚本将它们从 fastq 转换为 fasta。模块 SeqIO.convert 可以轻松转换单独指定的文件,但我不知道如何转换整个目录。单独做的文件并不是太多,但我正在努力学习。

我是Biopython的新手,所以请原谅我的无知。这个 convo很有帮助,但我仍然无法将目录从 fastq 转换为 fasta。

这是我一直在尝试运行的代码:

#modules- 
import sys
import re
import os
import fileinput

from Bio import SeqIO

#define directory
Directory = "FastQ”

#convert files  
def process(filename):
  return SeqIO.convert(filename, "fastq", "files.fa", filename + ".fasta",   "fasta", alphabet= IUPAC.ambiguous_dna)
4

1 回答 1

0

您需要遍历目录中的文件并转换它们,因此假设您的目录是FastQ并且您正在从正确的文件夹(即您的目录所在的文件夹,因为您使用的是相对路径)调用您的脚本,您需要做类似的事情:

def process(directory):
    filelist = os.listdir(directory)
    for f in filelist:
        SeqIO.convert(f, "fastq", f.replace(".fastq",".fasta"), "fasta", alphabet= IUPAC.ambiguous_dna)

然后你会在你的主要调用你的脚本:

 my_directory = "FastQ"
 process(my_directory)

我认为这应该有效。

于 2015-06-26T15:27:36.543 回答