| 查看: 669 | 回复: 5 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
[交流]
用perl程序将fq文件的序列行反向输出 已有4人参与
|
|||
|
本人实属perl小小白一枚 现遇到生信方面的一个问题 需要将fastq文件中含序列的行做反向处理,其他行不动,最后输出 这里有师兄帮我写的代码 但是在Linux下运行总是提示错误 大牛能否帮忙一看,小小白不胜感激! 首次接触木虫,金币为0,攒了金币后会送给帮助我的牛牛们! 大谢~ 举个栗子 @HWI-ST833:306:C7AYCACXX:1:1101:1491:2080#0/1 CGCTGAGAATGAGCCCCGTGTGGTTGGTGCGCGGACACGCACTGCCTGCGTAACTAGAGGGAGCTGACGGATGACGCCCCCGCGCCACGCCGCT + CCCFFFFFHHHGHJJJJJFHGIJHIJJDGHHIJJIHIJHHGFFEEEEEED?BDDEDDDDDDBDDDDDDDDBBDDDBDDDDDDDDDDDDDDDDDD 这是fq文件的某条数据,需要取出第二行(序列行),反向(TCGCCGCA……AAGAGTCGC),其他行不动,输出酱紫的: @HWI-ST833:306:C7AYCACXX:1:1101:1491:2080#0/1 TCGCCGCA……AAGAGTCGC + CCCFFFFFHHHGHJJJJJFHGIJHIJJDGHHIJJIHIJHHGFFEEEEEED?BDDEDDDDDDBDDDDDDDDBBDDDBDDDDDDDDDDDDDDDDDD 代码如下: #!/usr/bin/perl use warnings; open (FASTQ,'XXX.fastq'); while (<FASTQ> ) { my $tmp1=$_; chomp($tmp2); my $tmp2=<FASTQ>; chomp($tmp2); my @seq=split//,$tmp2; @seq=reverse @seq; my $s=join"",@seq; my $tmp3=<FASTQ>; chomp($tmp3); my $tmp4=<FASTQ>; chomp($tmp4); my @quality=split//,$tmp4; @quality=reverse @quality; my $q=join"",@quality; print "$tmp1\n$s\n$tmp3\n$q\n"; } close FASTQ; Linux提示的错误: Name "main::tmp2" used only once: possible typo at reverse.pl line 6. readline() on closed filehandle FASTQ at reverse.pl line 4. 感谢牛牛的帮助~~ |
» 猜你喜欢
情人节自我反思:在爱情中有过遗憾吗?
已经有10人回复
今年春晚有几个节目很不错,点赞!
已经有7人回复
基金正文30页指的是报告正文还是整个申请书
已经有5人回复
过年走亲戚时感受到了所开私家车的鄙视链
已经有5人回复
HappyKuan
银虫 (小有名气)
- 应助: 4 (幼儿园)
- 金币: 195.7
- 散金: 178
- 帖子: 86
- 在线: 75.9小时
- 虫号: 2219965
- 注册: 2013-01-03
- 专业: 生物信息学
6楼2015-10-14 14:02:50
★
小木虫: 金币+0.5, 给个红包,谢谢回帖
小木虫: 金币+0.5, 给个红包,谢谢回帖
|
本帖内容被屏蔽 |
2楼2015-10-03 20:40:12
★
小木虫: 金币+0.5, 给个红包,谢谢回帖
小木虫: 金币+0.5, 给个红包,谢谢回帖
|
本帖内容被屏蔽 |
3楼2015-10-03 20:46:08
4楼2015-10-13 20:04:49













回复此楼