You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将每行对应序列的Pandas DataFrame转换为FASTA文件?

Pandas DataFrame 转 FASTA 文件方法

核心逻辑很直接:把DataFrame每行的字符拼接成连续序列,再按照FASTA格式(>序列ID加换行,接着是序列内容)生成文本,最后写入文件即可。

示例代码

先构建你给出的示例DataFrame,再完成转换:

import pandas as pd

# 构建示例DataFrame
df = pd.DataFrame({
    'c1': ['D', 'D'],
    'c2': ['C', 'C'],
    'c3': ['Y', 'E'],
    'c4': ['C', 'C'],
    'c5': ['T', 'Q']
})

# 生成FASTA格式内容
fasta_lines = []
for row_index, row_data in df.iterrows():
    # 拼接当前行的所有字符成完整序列
    seq = ''.join(row_data.values)
    # 按FASTA格式添加条目
    fasta_lines.append(f'>{row_index}\n{seq}')

# 合并所有条目为一个字符串
fasta_content = '\n'.join(fasta_lines)

# 写入文件
with open('sequences.fasta', 'w') as f:
    f.write(fasta_content)

输出结果

运行后生成的sequences.fasta内容如下:

>0
DCYCT
>1
DCECQ

扩展说明

如果你的序列ID不是DataFrame的行号,而是某一列(比如有个名为seq_id的列),只需要把f'>{row_index}'改成f'>{row_data["seq_id"]}'即可适配。

内容的提问来源于stack exchange,提问作者Solomon123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 07:32:05