perl语言入门实战习题

perl语言入门实战习题

ID:14171948

大小:61.50 KB

页数:5页

时间:2018-07-26

perl语言入门实战习题_第1页
perl语言入门实战习题_第2页
perl语言入门实战习题_第3页
perl语言入门实战习题_第4页
perl语言入门实战习题_第5页
资源描述:

《perl语言入门实战习题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、《Perl语言入门实战习题》一、计算FASTA文件中每条序列的长度;输入文件,FASTA格式:注:如果输入文件在windows下产生,在Linux系统下操作时,宜先用dos2unix处理:用法:dos2unix输入文件输出文件:Perl代码:#!/usr/bin/perl-wusestrict;unless(@ARGV==2){#@ARGV传给脚本的命令行参数列表die"Usage:perl$0";#当命令行参数不是2的时候输出使用说明}my($infile,$outfile)=@ARGV;#把命

2、令行参数赋值给输入文件和输出文件openIN,$infile

3、

4、die"error:can'topeninfile:$infile";#打开输入文件句柄INopenOUT,">$outfile"

5、

6、die$!;#打开输出文件句柄OUT$/=">";;#设置输入记录分隔符为”>”,并去除第一个”>”while(my$seq=){#把序列ID行和序列赋值给$seqmy$id=$1if($seq=~/^(S+)/);#获取序列IDchomp$seq;#去掉末尾的”>”$seq=~s/^.+?//;#删除第一行$seq=~s

7、/s//g;#删除序列中的空白字符my$len=length($seq);#计算序列长度printOUT"$idt$len";#输出结果到输出文件}$/="";#把输入记录分隔符改为默认值closeIN;#关闭输入文件句柄closeOUT;#关闭输出文件句柄一、计算FASTA文件中每条序列的GC含量;输入文件同上,输出文件:Perl代码:#!/usr/bin/perl-wusestrict;unless(@ARGV==2){#@ARGV传给脚本的命令行参数列表die"Usage:perl$0

8、";#当命令行参数不是2的时候输出使用说明}my($infile,$outfile)=@ARGV;#把命令行参数赋值给输入文件和输出文件openIN,$infile

9、

10、die"error:can'topeninfile:$infile";#打开输入文件句柄INopenOUT,">$outfile"

11、

12、die$!;#打开输出文件句柄OUT$/=">";;#设置输入记录分隔符为”>”,并去除第一个”>”while(){#$_=,把序列ID行和序列赋值给$_,$_=可以省略不写my$id=$1if(/^(S+)/)

13、;#获取序列IDchomp;#去掉末尾的”>”s/^.+?//;#删除第一行s/s//g;#删除序列中的空白字符my$GC=(tr/GC/GC/);#计算G或C碱基个数my$AT=(tr/AT/AT/);#计算A或T碱基个数my$len=$GC+$AT;#计算序列非N长度my$gc_cont=$len?$GC/$len:0;#计算GC含量,如果长度为0,GC含量算0printOUT"$idt$gc_cont";#输出结果到输出文件}$/="";#把输入记录分隔符改为默认值closeIN;#关闭输入文件句柄closeOUT;

14、#关闭输出文件句柄一、求反相互补序列;输入文件同上,输出文件也是FASTA格式Perl代码:#!/usr/bin/perl-wusestrict;unless(@ARGV==2){#@ARGV传给脚本的命令行参数列表die"Usage:perl$0";#当命令行参数不是2的时候输出使用说明}my($infile,$outfile)=@ARGV;#把命令行参数赋值给输入文件和输出文件openIN,$infile

15、

16、die"error:can'topeninfile:$infile";#打开输入文件句柄

17、INopenOUT,">$outfile"

18、

19、die$!;#打开输出文件句柄OUT$/=">";;#设置输入记录分隔符为”>”,并去除第一个”>”while(){#$_=,把序列ID行和序列赋值给$_,$_=可以省略不写my$id=$1if(/^(S+)/);#获取序列IDchomp;#去掉末尾的”>”s/^.+?//;#删除第一行s/s//g;#删除序列中的空白字符$_=reverse$_;#序列方向tr/ATCG/TAGC/;#序列互补printOUT">$id",$_,"";#输出结果到输出文

20、件}$/="";#把输入记录分隔符改为默认值closeIN;#关闭输入文件句柄closeOUT;#关闭输出文件句柄二、列表信息整合;输入列表1:序列长度文件输入文件2:序列测序覆盖深度文件

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。