python实现fastq文件GC含量的计算

fastq格式是生物信息分析中最常见的格式之一
通常我们可以将测序的数据分为双端测序和单端测序双端测序的数据含有两个fastq格式的文件,单端测序的数据只有一个fastq格式的文件

  • 第一行是用来区分不同reads的一个ID号,一般以@符号开头,这一行是用来区分不同的reads,而这一行本身包含了很多的信息。
    Read Record Header
    Flow Cell ID
    Lane
    Tile
    Tile Coordinates
    Barcode

  • 第二行是测序的序列,也就是reads的序列

  • 第三行一般是一个+号,或者与第一行的信息相同

  • 第四行是碱基质量值,是对第二行序列的碱基的准确性的描述,一个碱基会对应一个碱基质量值,所以这一行和第二行长度是一样的,如果不一样就说明数据有问题。

  • fastq文件

@HWI-D00621:692:HW52WBCX2:1:1101:5079:2466 1:N:0:AAGTATCGTAAGACAC
ACTCCTACGGGAGGCAGCAGTAGGGAATTTTGGGCAATGGGCGAAAGCCTGACCCAGCAACGCCGCGTGTGTGATGAAGCCCCTAGGGGTGTAAAACACTGTCAGTAGGGAAGAACAAATGACTGTACCTACAGAGGAAGCACCGGCTAACTCCGTGCCAGCAGCCGCGGTAATACGGAGGGTGCAAGCGTTATCCGGAATCATTGGGCGTAAAGAGTTCGTAGGCGGTATATCAAGTCTGGTGTTAAAT
+
DDDDDIIIIIIIIIIIIIIIIIIIIHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIHIIIIIIIIIIHIIIIIIIIIIIIIIIIIHHHHIIIIIIIIIHIIGHHIIHIIIIIIGIEHIIHIIIIIIIIGHHHIIIIHFHIIGIIIFHIIEHEHHFHIIHIIIIIIEEHHHFHIIIHHIHIIIIIIIHH=GHIII=E?FHHGHIIIHDH=BFHIHICHHHHHIIIHHH?FHGHIFHEGFGHHIIH@H

GC含量的意义:
GC含量是在所研究的对象(例如放线菌)的全基因组中,(鸟嘌呤)(Guanine)和胞嘧啶(Cytosine)所占的比例。一种生物的基因組或特定DNA、RNA片段有特定的GC含量。

计算下面的fq文件的gc含量:

fastq文件 : Bacterial_F1_1.fq

​#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:wangmeng
# email:15670536819@163.com
gccontent=open("/home/***/Data/ele_data_2019_2_28/Bacterial_F1_1.fq","r")
#set the the values to 0
a=0
g=0
c=0
t=0
linenumber=0
gccontent.readline()
for line in gccontent:line=line.lower()linenuber+=1if linenumber%4==1:print lineprint linenumberfor gc in line.lower():if gc=="a":a+=1if gc=="c":c+=1if gc=="g":g+=1if gc=="t":t+=1
print "number of a's " + str(a)
print "number of c's " + str(c)
print "number of g's " + str(g)
print "number of t's " + str(t)
​
gc=(g+c+0.)/(a+t+g+c+0.)
print "gc content:"+str(gc)

结果:
因为只取第二行的序列信息,所以每四行取一行计算,下面是取到的序列。
看到gc含量为53.8%,符合实际情况。

搜索公共号:ShengXinZaTan

python实现fastq文件GC含量的计算相关推荐

  1. python学习——把计算GC含量的代码封装成函数

    把代码封装成函数的好处是可以重复使用该段代码,并且会使代码结构清晰 例如要计算chr1以及chr2染色体的GC含量,代码如下: 1 # 将代码封装为函数并重复使用,例如计算染色体的GC含量 2 chr ...

  2. 下载FATSQ,读取10条序列并计算每条序列的长度和GC含量

    FASTQ 这是目前存储测序数据最普遍.最公认的一个数据格式,另一个是uBam格式,但这篇文章中不打算对其进行介绍.上面所讲的FASTA文件,它所存的都是已经排列好的序列(如参考序列),FASTQ存的 ...

  3. python 实现大文件md5值计算

    参考:python 实现大文件md5值计算_ddw6022的博客-CSDN博客 python比较两个文本文件是否相同 - douzujun - 博客园 用python 正确计算大文件md5 值 - P ...

  4. 使用Python获取Excel文件中单元格公式的计算结果

    假设有如下Excel文件,其中第二个WorkSheet中数据如下: 其中D列为公式,现在要求输出该列公式计算的数值结果,代码如下: 代码运行结果: ----------相关阅读---------- 1 ...

  5. 生信脚本练习(5)求fastq文件的cg含量

    这道题要求求出一个fastq文件中序列的cg含量 with open("Test1.fastq","r") as f:lines = f.readlines() ...

  6. python处理csv文件将字符串格式XXXX年XX月XX日转化为datetime64XXXX-XX-XX格式,可以进行索引设置和日期计算

    python处理csv文件将字符串格式XXXX年XX月XX日转化为datetime64XXXX-XX-XX格式,可以进行索引设置和日期计算 python读取csv文件中,某列卫XXXX年XX月XX日, ...

  7. python向服务器上传fq文件,用python-fas读取大型fastq文件

    我有几个fastq文件,平均有500.000.000行(125000.000个序列).有没有一种快速读取这些fastq文件的方法. 我想做的是,读取每个序列并使用前16个序列作为条形码.然后统计每个文 ...

  8. fastp: 极速全能的FASTQ文件自动质控+过滤+校正+预处理软件

    软件作者介绍 陈实富博士,海普洛斯联合创始人 / CTO 海普洛斯是全球领先的精准医疗和基因大数据国家高新技术企业,拥有 Illumina NovaSeq. HiSeq X10.NextSeq等全系列 ...

  9. python处理fasta文件_Python脚本:fasta文件单序列信息提取

    使用Python对fasta格式的序列进行基本信息统计 预期设计输出文件中包括fasta文件名,序列长度,GC含量以及ATCG各自的含量. Python脚本编辑 使用的文件 test.fasta st ...

  10. linux怎么查看fastq格式文件,2020-01-11 了解FASTQ格式并处理FASTQ文件

    FASTQ文件格式是测序仪展示数据的标准格式,可以看成FASTA文件的变种(FASTA+Q),因为其包含了对序列中每个碱基的Qualify Measurement.(如:碱基A出错的可能性是1/100 ...

最新文章

  1. mysql 前台启动_从Windows命令行启动MySQL
  2. c与python的区别-C++/C/JAVA/Python之间的区别?
  3. php 多只能上传20个文件解决办法,修改php.ini 的max_file_uploads
  4. shell:后台运行amp;,日志重定向输出,nohup,grep命令
  5. bg感_【0328】BG推文 | 5本我在逃生游戏里养娃娃+岁月缱绻已无你+关于我比女主苏这回事+消失的白月光又回来了等...
  6. 翻译:通向T-SQL的阶梯:超越基础水平3:建立相关子查询
  7. 【Linux】linux和Mac下命令vmstat
  8. UCMA(OCS) 开发系列之一
  9. mac怎么查node版本_Node.js 微服务实践:基于容器的一站式命令行工具链
  10. XDUOJ 1125 Judgement of Orz Pandas
  11. 21世纪十大营销法则
  12. 文末彩蛋 | 这个 Request URL 长得好不一样
  13. html tbody接收数据,html tbody标签怎么用
  14. spring boot启动后控制台没有端口信息打印日志也很少
  15. 蓝牙硬件设备没有链接到计算机,电脑未发现蓝牙硬件设备怎么办
  16. 【codeforces85D】
  17. LeetCode 517 超级洗衣机 解法
  18. 陶云机器人_小帅智能机器人app
  19. Dagger2 使用详解
  20. lnk306dn引脚功能_LNK306DN

热门文章

  1. 软考- 高级信息系统项目管理师,第一章 信息化与信息系统
  2. 怎么把php转成bt_php能不能转换成bt种子
  3. Echarts制作标签云图
  4. 中国裁判文书网全网最新爬虫分析
  5. 前后端分离 -- 深入浅出 Spring Boot + Vue 实现工程项目进度管理系统 Vue不过如此~
  6. redis缓存hset, hget, hPutAll
  7. java中将汉字转拼音,解决pinyin4j多音节问题
  8. Math.floor cei round
  9. 关于VS2017配置OpenCV出现无法打开文件“opencv_ml249d.lib”的解决方案
  10. HTML中的input type=reset标签失效(不起作用)的可能原因