Bio-Info每日一题:Rosalind-05-Computing GC Content

🎉 进入生物信息学的世界,与Rosalind一起探索吧!🧬
Rosalind是一个在线平台,专为学习和实践生物信息学而设计。该平台提供了一系列循序渐进的编程挑战,帮助用户从基础到高级掌握生物信息学知识。无论你是初学者还是专业人士,Rosalind都能为你提供适合的学习资源和实践机会。
网址:https://rosalind.info
你是否想像专业人士一样分析DNA序列?这里有一个简单的任务来帮助你入门。
📝 任务说明:
请添加图片描述

解答

此处借助Biopython来进行解答,Biopython除了能够对fasta文件进行解析之外,也有现成计算GC含量的方法Bio.SeqUtils.gc_fraction(),我们只需进行比较得到GC含量最高的序列ID即可。
我的想法是通过字典将序列ID和GC含量存储起来,之后再通过max()进行比较。

from Bio import SeqIO
from Bio.SeqUtils import gc_fraction

def parse_seq(file_path):
    seq_dic = {}
    for seq_record in SeqIO.parse((file_path), "fasta"):
        print(f"{seq_record.id} done!!!")
        seq_dic[seq_record.id] = gc_fraction(seq_record) * 100
    # print(seq_dic)
    return seq_dic

def get_max_GC(seq_dic):
    max_gc_id = max(seq_dic, key=seq_dic.get)
    return max_gc_id, seq_dic[max_gc_id]
def main():
    file_path = r"D:\000zyf\Learning\python_learn\Rosalind\rosalind_gc.txt"
    id, gc = get_max_GC(parse_seq(file_path))
    print(id, gc)
if __name__ == "__main__":

    main()

纸上得来终觉浅,绝知此事要躬行。
公众号:BIoYfan,之后会坚持同步更新生信方面内容
与君共勉💪

相关推荐

  1. 每日01

    2024-06-10 02:24:02       22 阅读
  2. LeetCode每日.03(外观数列)

    2024-06-10 02:24:02       61 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-10 02:24:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-10 02:24:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-10 02:24:02       82 阅读
  4. Python语言-面向对象

    2024-06-10 02:24:02       91 阅读

热门阅读

  1. 2 程序的灵魂—算法-2.2 简单算法举例-【例 2.2】

    2024-06-10 02:24:02       28 阅读
  2. 归一化在神经网络训练中的作用

    2024-06-10 02:24:02       26 阅读
  3. 基于fegin远程调用的重试功能

    2024-06-10 02:24:02       31 阅读
  4. 二分查找相关题目(c++)

    2024-06-10 02:24:02       34 阅读
  5. CSDN个人主页动态地图(前端/后端)

    2024-06-10 02:24:02       34 阅读
  6. 第06章_多表查询

    2024-06-10 02:24:02       22 阅读
  7. WebAPI 前端开发流程:深度解析与实践探索

    2024-06-10 02:24:02       29 阅读
  8. Spring Cloud Gateway CORS 跨域方案

    2024-06-10 02:24:02       28 阅读
  9. VB6.0 调用存储过程

    2024-06-10 02:24:02       32 阅读
  10. React antd 怎么封装权限按钮

    2024-06-10 02:24:02       27 阅读
  11. AppML 下载

    2024-06-10 02:24:02       30 阅读
  12. Oracle 数据库采用外部表监控查看分析 alert 告警

    2024-06-10 02:24:02       30 阅读