读取FASTA文件

使用pip下载biopython

pip.exe install biopython
import sys
from Bio import SeqIO
sys.path #检查模块安装路径

SeqIO是BIo包的子包,一般py结尾的为模块。
sys.path 检查模块安装路径

from Bio.SeqRecord import SeqRecord
from Bio.Seq import Seq

加载对应的包。

SeqIO 读取序列文件

方式一 使用parse读取然后使用for循环迭代

SeqIO.parse("基因课Python学习/Python20201122/data/fasta_example_data/small_ls_orchid.fasta", "fasta")
sri = SeqIO.parse("基因课Python学习/Python20201122/data/fasta_example_data/small_ls_orchid.fasta", "fasta")
type(sri)

<class ‘Bio.SeqIO.FastaIO.FastaIterator’>中FastaIterator为迭代器

next(sri)for sr in sri:print(sr.seq)

#此方式相当于列表,不好抓取。

方式二:index 建议用index 信息为键 SeqRecord为值的字典。

fn = "基因课Python学习/Python20201122/data/fasta_example_data/small_ls_orchid.fasta"
def get_acc(old_key):infos = old_key.split('|')new_key = infos[3]# 断言,鲁棒性assert len(infos)==5 and infos[0]=='gi' and infos[2] ='emb'return new_key
seq_index = SeqIO.index(fn,'fasta',key_function=get_acc)
list(seq_index.keys())
list(seq_index.values())

SeqRecord

seq_index['Z78533.1']

Seq

my_str = 'AATCCGGAGGACCGGTGTACTCAGCTCA'my_str.upper()
my_str.lower()
my_str[1:20:2]
my_str[::2]
my_str[::-1] #反向my_seq =Seq( 'AATCCGGAGGACCGGTGTACTCAGCTCA')
my_seq.count('G') #记数
my_seq.upper()  #全体大写my_seq.complement() # 互补
my_seq.reverse_complement() #反向互补

#Seq对象里面存的是序列,Seqrecord不仅存了序列还存了序列的id等信息

coding_dna =Seq("AATCCGGAGGACCGGTGTACTCAGCTC")
coding_dna.transcribe() #转录
coding_dna.translate() #翻译
coding_dna.translate(to_stop=True)coding_dna.translate(table=2) #挑选密码子表。str(seq_index['id'].seq)

#提取碱基序列,并转换为字符串模式。其中name,id,seq,都可提取。

小结

此篇文章针对上一篇计算测序文件N50,来解决实际问题,我们得到的数据一般是fasta文件,往往需要进行初步处理,才能得到之前博文里面的准备数据,即染色体长度数据,所以对fasta文件提取工作显得十分重要,本文主要采用了Biopython来进行一系列操作,通常使用的是seq_index = SeqIO.index(fn,‘fasta’,key_function=get_acc),因为其抓取出来是字典模式,方便后面切片筛选,同时seq函数能够对序列进行大小写转换,计数序列里面的碱基,进行互补,反向互补,翻译,转录,等操作,大大提高了序列的可操作性。最近事情挺多的能坚持下来感觉自己还是挺厉害,虽然自己感觉还是没有学透,但是自己慢慢在积累,我觉得就已经很不错了。加油!

最后再来点鸡汤,不然文字过少,系统给我认定文章内容不佳,真是太难了。世上没有不平的事,只有不平的心。不去怨,不去恨,淡然一切,往事如烟。有多少残酷,你就该有多少坚强;有多少努力,你就会有多少光芒。没有太晚的开始,不如就从今天行动。总有一天,那个一点一点可见的未来,会在你心里,也在你的脚下慢慢清透。生活,从不亏待每一个努力向上的人。

使用Python脚本读取fasta文件相关推荐

  1. python打开文件报错无效序列_如何在python中读取fasta文件?

    我正在尝试读取FASTA文件,然后查找特定的 motif(string)并打印出序列和次数. A FASTA file只是一系列序列(字符串),以标题行开头,标题或新序列的开头是">& ...

  2. 利用Python读取fasta文件并进行一系列操作(上)

    利用Python读取fasta文件并进行一系列操作(上) 概述 语言:python3.8 模块:pysam collections 可选:jupyter 整体思路:将fasta格式的基因原始数据处理为 ...

  3. python读取整个txt文件-python怎么读取txt文件内容

    读取文件: 步骤:打开 -- 读取 -- 关闭>>> f = open('/tmp/test.txt') >>> f.read() 'hello python! h ...

  4. python怎么读取txt文件-python怎么读取txt文件内容

    读取文件: 步骤:打开 -- 读取 -- 关闭>>> f = open('/tmp/test.txt') >>> f.read() 'hello python! h ...

  5. 【Python】读取 txt 文件

    使用 python 脚本对 txt 文件进行读取: 本例中,txt 内容为 1,1,1: with open('./task.txt') as f:lst = f.read() # 使用 with 方 ...

  6. python pandas读取csv文件指定行_python pandas获取csv指定行 列的操作方法

    python pandas获取csv指定行 列的操作方法 pandas获取csv指定行,列 house_info = pd.read_csv('house_info.csv') 1:取行的操作: ho ...

  7. xml的学习和使用python解析读取xml文件

    1. XML的介绍 XML 指可扩展标记语言(EXtensible Markup Language). 和json类似也是用于存储和传输数据,还可以用作配置文件. 类似于HTML超文本标记语言,但是H ...

  8. json字段顺序读取 python_如何利用Python批量读取视频文件的时间长度?

    本期的主题是利用Python来实现对视频文件时间长度的读取. 在学习编程语言时,相比较于通过书本来学习知识,我更喜欢通过观看学习视频的方式来进行学习,通过主讲老师的讲解,我能很直观且快速的了解一些知识 ...

  9. python怎么读取txt文件内容然后保存到excel-Python实现读取txt文件并转换为excel的方法示例...

    本文实例讲述了Python实现读取txt文件并转换为excel的方法.分享给大家供大家参考,具体如下: 这里的txt文件内容格式为: 892天平天国定都在?A开封B南京C北京(B) Python代码如 ...

最新文章

  1. java modelmapper_java - 使用ModelMapper映射抽象类型的字段 - SO中文参考 - www.soinside.com...
  2. 有符号数据的符号位扩展
  3. C#2.0泛型-Dictionary,List的用法
  4. 基于用户画像的实时异步化视频推荐系统
  5. Release Type
  6. 2018-2019-1 20165202 《信息安全系统设计基础》第四周学习总结
  7. Flash背景透明的代码
  8. 如何在Ubuntu 16.04上创建多节点MySQL集群(MySQL-Cluster)
  9. CGRect包含交错,边缘,中心的检测
  10. rabbitmq-plugins.bat enable rabbitmq_management
  11. org.apache.commons.io如何使用
  12. 2021年2月十大热门报告盘点(附百大热门报告列表及下载链接)
  13. 后台传值给前台p标签
  14. Aerospike 使用场景
  15. 软考网络工程师基础知识
  16. python弹性碰撞次数圆周率_期末作业 - 作业部落 Cmd Markdown 编辑阅读器
  17. Centos 7.4 防火墙关闭命令
  18. Ubuntu 18.04 LTS系统主题美化
  19. RPC框架的意义和用法,什么是RPC
  20. 数据库中html数据类型,常用数据库的字段类型及大小

热门文章

  1. Android控制wifi开关
  2. 用jQuery提取到input中value值 checked选择器
  3. 七夕界的浪漫之光,向你安利程序员的表白方式
  4. 特征选择方法详解Part2-卡方检验、互信息(Mutual Information)
  5. WordPress – wp-rocket插件的简单设置以及如何加速网站
  6. 64位开源处理器Rocket的源代码简单介绍
  7. SATA、AHCI、ATA等相关知识概述
  8. 机器学习:神经网络中的激活函数
  9. 1404111-67-6,N-Boc-PEG5-alcohol,N-Boc-PEG5-CH2CH2OH实验室常用试剂的保存方法
  10. Win7网络修复,winsock/tcpip