利用kseq.h parse fasta/fastq 文件】的更多相关文章

在分析中经常需要统计fasta/fastq文件的序列数和碱基数, 但是没有找到一些专门做这件事的小工具,可能是这个功能太简单了: 之前用自己写的perl的脚本统计这些信息, 当fastq文件非常大时,就变的很慢: 今天在网上搜到kseq.h可以parse fasta/fastq文件,用C写的, 速度很快: http://lh3lh3.users.sourceforge.net/parsefastq.shtml 自己试了一下, 在这个基础上添加个小功能, 命名为parse.c: #include…
准备测试文件 test.fq, 包含4条fastq 文件,碱基编码格式为phred64; @FC12044_91407_8_200_406_24 NTTAGCTCCCACCTTAAGATGTTTA +FC12044_91407_8_200_406_24 SXXTXXXXXXXXXTTSUXSSXKTMQ @FC12044_91407_8_200_720_610 CTCTGTGGCACCCCATCCCTCACTT +FC12044_91407_8_200_720_610 OXXXXXXXXXXXX…
将fasta文件线性化处理 awk '/^>/ {printf("%s%s\t",(N>0?"\n":""),$0);N++;next;} {printf("%s",$0);} END {printf("\n");}' < input.fa cat Rmh.fasta | awk '{printf("%s%s",$0,((NR+1)%2==1?"\n"…
seqtk 的 GitHub 官网 https://github.com/lh3/seqtk 安装 git clone https://github.com/lh3/seqtk.git cd seqtk make The only library dependency is zlib.…
测序数据中经常会接触到fastq格式的文件,比如说拿到fastq格式的原始数据后希望查看测序碱基的质量并去除低质量碱基.一般而言大家都是用现有的工具,比如说fastqc这个Java写的小程序,确实很好用,运行速度快,检查的项目也多.有时候我们也需要对这些数据进行个性化的分析,那么这个时候这些小工具就不能胜任了,需要我们自己写程序(脚本)来处理.本人目前才疏学浅,因此只有一下三种方案: 1.完全自己写脚本,读取每一行,手动解析,然后实现个性化分析.(显然这个比较慢,相当于重造了一个转速很慢的轮子)…
二代测序的分析过程中,经常需要统计原始下机数据的数据量,看数据量是否符合要求:另外还需要统计q20,q30,GC含量等反应测序质量的指标: 在kseq.h 的基础上稍加改造,就可以实现从fastq 文件中统计这些指标的功能,而且速度非常的快 #include <zlib.h> #include <stdio.h> #include <string.h> #include "kseq.h" // STEP 1: declare the type of…
1)知识简介--------------------------------------------------------1.1)测序质量值 首先在了解fastq,fasta之前,了解一下什么是质量值.phred软件在对reads进行base calling的时候会给出每一个碱基的质量值,这个质量值的计算与测序预期错误率相关(estimated probability of error): Phred Quality Score     Probability of incorrect bas…
最近我同事做了一个PHP项目,其中有一个功能是 上传excel文件并将数据导入mongodb某个集合中. 通常的做法是 写一个上传文件的页面,然后后端 读取 这个文件,利用phpexcel类库将这个excel文件中的数据读入到某个数组中, 然后循环写入monogodb的某个集合中. 经过实践成功搞定.文件小的时候一切OK,但是当上传的文件很大的时候,或者说数据量很大的时候, 上面的办法就发生问题了.有时候后端没有响应,有时候可以成功,但是一般需要很长的时间才能完成任务. 我们这边测试一下,上传一…
一.下载gsoap文件,下载地址:https://zh.osdn.net/projects/sfnet_gsoap2/releases/ 二.以gsoap-2.8为例,解压到D盘,在D:/gsoap-2.8/gsoap/bin/win32目录下,有wsdl2h.exe和soapcpp2.exe两个程序,将D:/gsoap-2.8/gsoap目录下的stdsoap2.h和stdsoap2.cpp两个文件拷贝到D:/gsoap-2.8/gsoap/bin/win32目录下,将D:/gsoap-2.8…
#!/usr/bin/perl -w use warnings; use strict; input_fastq trim_length}; ; my ($fastq, $trim_length) = @ARGV; open(FASTQ, $fastq) or die "Can't open $fastq\n"; while (my $readid = <FASTQ>) { chomp $readid; chomp (my $sequence = <FASTQ>…