我正在编写一个预测某些序列的程序。我希望它以 gzipped fasta 格式保存结果。但是,当尝试写入此类文件时,我收到无效文件(当尝试在 Windows 上打开它时,我收到压缩存档文件夹错误)。这是相关代码:
def annotate_fasta_file(model, input_path, output_path):
"""
Annotates all sequences in a FASTA file with CpG island predictions.
Parameters:
model (object): A trained classifier model.
input_path (str): Path to the input FASTA file.
output_path (str): Path to the output FASTA file where annotations will be saved.
Writes:
A gzipped FASTA file containing predicted annotations for each input sequence.
"""
sequences = parse_fasta_file(input_path)
with gzip.open(output_path, 'wt') as gzipped_file:
for seq_id, sequence in sequences.items():
annotation = annotate_sequence(model, sequence)
gzipped_file.write(f">{seq_id}\n{annotation}\n")
这是我在尝试单击或提取输出文件时遇到的错误: 在此输入图片描述
不要使用
'wt'
。 就是这么简单。 gzip 压缩的文件是二进制的。 称它们为文本只不过是要求将其内容丢弃。 使用'wb'
。