Perl去重fasta序列
2024-09-01 20:41:51
常规方法
#! usr/bin/perl -w
use strict;
my $input=shift;
my %hash;
open IN,"<$input";
$/=">";
while(<IN>){
chomp;
$hash{$_}=1;
}
foreach my $key(keys %hash){
print ">$key";
}
close IN;
Bioseq模块方法
#!/usr/bin/perl
use Bio::SeqIO;
my $fas=shift @ARGV;
my $IN=Bio::SeqIO->new(-file=>"$fas",-format=>'fasta');
my $OUT=Bio::SeqIO->new(-file=>">New_$fas",-format=>'fasta');
my $check={};
while (my $seq=$IN->next_seq()){
my $id=$seq->id;
unless($check->{$id}){
$check->{$id}=1;
$OUT->write_seq($seq);
}
}
$IN->close();
$OUT->close();
print "Finished!\n";
单行命令
cat cat_allsample.fa |perl -076 -ne 'chomp; print ">$_" unless $c{$_}++ '|grep -c '>'
最新文章
- 在Windows Server 2008中布置Web站点时遇到的问题及解决办法
- RabbitMQ的work queue(1)
- [转]hibernate在eclipse的逆向工程生成hbm.xml和bean类
- 浅谈VBA
- xml、文件操作功能类
- OSI七层与TCP/IP五层网络架构详解
- VBA控件一些属性的解释
- OpenStack:安装Nova
- Halcon学习笔记之缺陷检测(二)
- 初识Less(2015年05月23日)
- 中文变英文字母(ios)
- StackOverflow:7个你从未见过的Java问题最佳答案
- JavaScript高级程序设计(第三版)学习笔记20、21、23章
- Android应用开发学习之画廊视图
- jQuery 事件 - bind() 方法
- MySQL python组件安装
- 3505: [Cqoi2014]数三角形
- hdu1011 Starship Troopers 树形DP
- python实战学习之matplotlib绘图
- [OC] Block的使用
热门文章
- 短短 29 天,应对高峰 100W+ 访问,看浙大如何交出满分答卷
- Microsoft Porject Online 学习随手记一:环境创建和数据导入
- The WebSocket session [0] has been closed and no method (apart from close()) may be called on a closed session-ConcurrentHashMap使用在webSocket中采的坑
- 正则表达式: NFA引擎匹配原理
- Beta-功能规格说明书
- 技术博客--微信小程序canvas实现图片编辑
- [BUAA]起点 软工第一次作业-热身
- Noip模拟70 2021.10.6
- 2021.7.29考试总结[NOIP模拟27]
- diff 命令,防止遗忘