gpt4 book ai didi

python - 解析数据帧和 fastafile

转载 作者:行者123 更新时间:2023-12-01 09:25:19 24 4
gpt4 key购买 nike

我只有一个数据帧和一个 fasta 文件,如果 seq_id 在我的 fasta 文件中,我需要做的只是在数据帧中保留行(或创建一个新行)。

这是一个例子:

数据框:

seq_1    seq_2      GC       Length
seq1 seq2 68 15561
seq4 seq3 89 567
seq9 seq90 45 789
seq97 seq43 56 458
seq45 seq9 67 900

快速文件:

>seq9 
ACTG
>seq97
ACTG
>seq1
ACTG

并获得一个新的 df,例如:

seq_1    seq_2      GC       Length
seq1 seq2 68 15561
seq9 seq90 45 789
seq97 seq43 56 458

谢谢你的帮助:)

最佳答案

  1. 读取 fastafile 中的行进入字符串列表 fasta_lines
  2. fasta_lines 中过滤序列名称通过seq_list = [s for s in fasta_lines if s.startswith('>')]
  3. 使用 seq_list 过滤数据框中的行过滤器:dataframe = dataframe[dataframe['seq_1'].isin(seq_list) || dataframe['seq_2'].isin(seq_list)]
  4. 检查是否 dataframe.shape[0] == 0因此,新数据框中没有行根据解析 fastafile 的逻辑附加新行

在您指定处理fastafile的逻辑之后,这个答案可能需要一些代码检查。 .

关于python - 解析数据帧和 fastafile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50462844/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com