php 统计fasta 序列长度和GC含量
最近php7的消息铺天盖地, 忍不住想尝试下。星期天看了下语法, 写个小脚本练下手;
这个脚本读取fasta 文件, 输出序列的长度和GC含量;
<?php $fasta = "test.fasta"; $meta = array(); $meta = parse_fasta($fasta); write_res($meta);function parse_fasta($fasta) {$meta = array();$file_handle = fopen($fasta, 'r');$id = '';$seq = '';while (!feof($file_handle)) {$line = fgets($file_handle);$line = preg_replace("/\s+$/", "", $line);if (preg_match("/^>/", $line)) {if ($id) {$meta[$id] = $seq;$id = $line;$seq = '';} else {$id = $line;} } else {$seq .= $line;}}$meta[$id] = $seq;fclose($file_handle);return $meta; }function write_res($meta) {foreach ($meta as $key => $value) {$len = cal_length($value);$gc = cal_gc($value);echo "$key\t$value\t$len\t$gc\n";} }function cal_length($seq) {return strlen($seq);}function cal_gc($seq) {$gc = array();preg_match_all("/G|C|g|c/", $seq, $gc);return count($gc[0]) / strlen($seq); }?>
php 统计fasta 序列长度和GC含量相关推荐
- 下载FATSQ,读取10条序列并计算每条序列的长度和GC含量
FASTQ 这是目前存储测序数据最普遍.最公认的一个数据格式,另一个是uBam格式,但这篇文章中不打算对其进行介绍.上面所讲的FASTA文件,它所存的都是已经排列好的序列(如参考序列),FASTQ存的 ...
- linux系统fasta程序,快速计算fasta序列长度的方法
最近看了一下进入PLoB的网页来路分析,看到有同学搜索计算fasta序列长度.其实自己在之前的数据分析中也遇到过相关的问题,这里给大家分享两种我常用的方法. 方法一:linux下用awk计算fasta ...
- 怎么用python计算序列长度_【python脚本】计算fasta序列长度;基因组contig/scaffold/chromosome长度...
目的 如题 脚本 import sys,os,re def process_file(reader): '''Open, read,and print a file''' names=[] index ...
- 使用Python计算fasta文件的序列长度
使用Python计算fasta文件的序列长度 在这里插入代码片使用Python计算fasta文件的序列长度 #!/usr/bin/python #-- coding:utf-8 -- import s ...
- linux提取fasta文件的id,FASTA序列文件处理一网打尽
推荐两个地方: 地方一都是小脚本,但实用,大伙也可以自己练习写. 地方二成熟软件SeqKit,也很实用. 一.小脚本 大家可以在这里下载以下脚本: https://github.com/jorvis/ ...
- C#,生信软件实践(03)——DNA数据库GenBank格式详解及转为FASTA序列格式的源代码
1 GenBank 1.1 NCBI--美国国家生物技术信息中心(美国国立生物技术信息中心) NCBI(美国国立生物技术信息中心)是在NIH的国立医学图书馆(NLM)的一个分支.它的使命包括四项任务: ...
- 【t081】序列长度(贪心做法)
Time Limit: 1 second Memory Limit: 128 MB [问题描述] 有一个整数序列,我们不知道她的长度是多少(即序列中整数的个数),但我们知道在某些区间中至少有多少个整数 ...
- python学习——把计算GC含量的代码封装成函数
把代码封装成函数的好处是可以重复使用该段代码,并且会使代码结构清晰 例如要计算chr1以及chr2染色体的GC含量,代码如下: 1 # 将代码封装为函数并重复使用,例如计算染色体的GC含量 2 chr ...
- linux提取fasta文件的id,从大的fasta文件中提取特定的fasta序列
我想使用以下脚本从大的fasta文件中提取特定的fasta序列,但输出为空.从大的fasta文件中提取特定的fasta序列 transcripts.txt文件包含我想从assembly.fasta到s ...
- 通过bed文件获取fasta序列
一.BED 文件格式 BED 文件格式提供了一种灵活的方式来定义的数据行,以用来描述注释的信息.BED行有3个必须的列和9个额外可选的列. 每行的数据格式要求一致. 必须包含的3列: 1.chrom, ...
最新文章
- Windows Server 2008与2012建立林信任关系
- 游牧大地的诗意:看龙力游的草原油画
- char a[]和char *a的比较,数组名,数组首地址,a,a,a[0]
- View controller-based status bar
- 第五节:WebApi的三大过滤器
- golang Println、Printf、Sprintf的区别
- 机械指挥官——全国领先的工程机械管理平台
- mac电脑mysql终端_Mac上用终端管理MySQL
- C++中const的一些知识点
- Android.mk的一些FAQ
- k-近邻算法进行回归拟合
- cad填充图案乱理石_CAD填充图案文件在哪个文件夹里?
- 南方都市报:红心照耀MSN
- matlab gui设计入门与实战,matlab gui编程教程
- Holt-Winters双指数平滑的java实现
- 《神雕侠侣》——一见杨过误终生,格格一笑很倾城
- Flink大数据计算框架
- 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。例如, 罗马数字 2 写做 II ,即为两个并列的 1
- Python学习-列表的常见操作
- redis系列--你真的入门了吗?redis4.0入门~