是这么回事的,整理一下一些有用的提问。感谢大家的提问。
网友sun:
我从miRbase数据库下载到了,matrue.fa,即里面有测出来的物种的成熟miRNA,里面有human 我想用perl把human的提出来另外存到一个文件.这是其中人的一条的
>hsa-miR-96 MIMAT0000095 Homo sapiens miR-96
UUUGGCACUAGCACAUUUUUGCU
怎么把所有的都提出来.
ps:正则表达式不是这个$s=~/^>hsa/期待你的回信.
有接触过miRbase数据库的,都知道miRNA的命名Human是用hsa开头,Mouse是用mmu开头,Rat是用rno开头。
解释一下
忘了大伙对Fasta格式可能有不明白的,我来稍微解释一下上面的话。比如有一个文件:matrue.fa。里面存放的内容的格式是这样子的:
>hsa-miR-96 UUUGGCACUAGCACAUUUUUGCU >mmu-miR-96 AAAGGCACUAGCACUCGAUCGA >rno-miR-85 UAGUCUGCAUGUUGCACAGUGUA
上面只是举一个为例子,数据都是批量的。想要取出以hsa命名开头的数据,取出来的结果是:
>hsa-miR-96 UUUGGCACUAGCACAUUUUUGCU ……
这样子就有了下面的Perl脚本:
提取Fasta序列的Perl脚本
#!/usr/bin/perl
$/ = '>';
print '>';
while(<>){
print if(/hsa-/);
}
这样就实现了从Fasta格式的文件中提取序列的目的,如果你再稍微改改,类似GenBank格式的也是可以提取的。还有好多,只要有唯一分隔符的都可以,不一一列出。
提醒一下:
$/ = '>';
强大之处是用了这句,自行慢慢体会。
有点相关的文章
- Perl:FastQ与FastA格式的相互转换 (0.849)
- Bioperl:把Genbank格式的序列转换为基因结构图 (0.652)
- 如何用perl处理测序文件 (0.545)
- perl常用的内置特殊变量 (0.545)
- perl:使用system函数 (0.545)
- linux:awk中的NR,FNR (RANDOM - 0.500)






嘿嘿,没看懂,
新年快乐
[回复]
坐一下老卢的大腿,也没看懂
[回复]
[回复]
汗,看得云里雾里 ~
对了,博主应该有从php转到perl的经历吧 ~
能否简述下过程 ~ 小邪有点心动 ~
[回复]
你也想学Perl?
我是要用到Perl才学的啊.
[回复]
佩服数据分析
[回复]
问问楼主有什么好方法可以进行批量数据的PAML分析?比bioperl好的方法,呵呵
[回复]
PAML不是建进化树的么? 不是太能理解你的意思~
[回复]
这句是什么意思?
$/ = '>';
[回复]
你可以自己测试一下啊。你找一个fasta格式的序列。
#!/usr/bin/perl
while(<>){
print;
}
第二种是:
#!/usr/bin/perl
$/='>';
while(<>){
print;
}
试了你就知道了呗~~
[回复]
非常感谢您的回复,PAML是算核苷酸替换率的,http://www.bioperl.org/wiki/HOWTO:PAML
非常喜欢你的博客,很多内容都很有用。
[回复]
好好加油吧,更上一层楼。
[回复]
真是太专业了,我完全看不懂
[回复]
好专业,学习了
[回复]
太专业了,我看不了啊
[回复]
[回复]