5 替换蛋白编号信息的问题

我按照老师的方法pel get_fa_by_id.pl  at.gff arabiopsis_thaliana.tair10.pep.all.fa pep.fa

替换蛋白编号信息(删除其他转录本的数据),代码执行通过没有报错,但pep.fa替换后的文件为空,请问如何解决?代码是老师上课中用的代码

请先 登录 后评论

2 个回答

cp

@omicsgene 老师,按照视频的脚本仔细核对没有错误,编译执行后也有没有报错,但pep.fa文件一直是空,文件名字没有空格,

如果脚本有问题,编译起来就会报错,还得请教老师来解决,谢谢


use Bio::SeqIO;

use Bio::Seq;


my$in = Bio::SeqIO->new(-file => "$ARGV[1]" , -format => 'Fasta');


my$out = Bio::SeqIO->new(-file => "$ARGV[2]" , -format => 'Fasta');


my%keep=();


open IN, "$ARGV[0]" or die "$!";

while(<IN>)

{

chomp;

next if /^#/;

my@tmp=split(/\s+/);

$keep{"$tmp[1].1"}=1;

}

close(IN);

while (my $seq = $in->next_seq() )

{

my($id,$sequence,$desc)=($seq->id,$seq->seq,$seq->desc);

if(exists $keep{$id})

{

$out->write_seq($seq);

}


}

$in->close();

$out->close();

请先 登录 后评论
omicsgene - 生物信息
擅长:重测序,遗传进化,转录组,GWAS

请仔细观看视频,脚本用法错误,文件名字不要有空格;


请先 登录 后评论