Weederで予測されたモチーフ配列を視覚化するために、予測されたモチーフ配列に対してそれぞれのweblogo用のfastaファイルが生成させるスクリプトです。
このスクリプトに通した後、生成されたfastaファイルを一つ一つweblogoで視覚化。
#!/usr/local/bin/perl #################################### #Weeder2weblogo##################### #var1.0_Perl #update: 2012.4.8 #################################### use strict; use warnings; my $file = $ARGV[0]; my $number = $ARGV[1]; #main#################################################### open (IN,"<./$file\.wee") || die; my $flg_gene=0; my $flg=0; my $filehandle = 1; my $count = 1; my %gene_ID; while(my $line = <IN>){ #Gene_ID if($line =~ /^Your sequences/){ $flg_gene = 1; next; }elsif($flg_gene == 1){ $flg_gene = 2; next; }elsif($flg_gene == 2 && $line eq "\n"){ $flg_gene = 0; next; }elsif($flg_gene == 2){ my @data = split(/\s+/,$line); $gene_ID{$data[1]}=$data[3]; next; } #Sequence_data if($line =~ /^Best occurrences/){ if($filehandle == 0){ close(OUT); $count++; }else{ $filehandle = 0; } open (OUT,">./$file\#$count\.fasta") || die; $flg = 1; next; }elsif($flg == 1){ $flg = 2; next; }elsif($line eq "\n" && $flg == 2){ $flg = 0; next; }elsif($flg == 2){ if($line =~ /^\s+/){ $line =~ s/^\s+//; } my @data = split(/\s+/,$line); if($data[2] =~ /^\[/){ $data[2] =~ s/\[//; $data[2] =~ s/\]//; } print OUT "$gene_ID{$data[0]}\n"; print OUT "$data[2]\n"; next; } } close(IN); close(OUT); print "...process successfully completed\n";〈使用方法〉
$ perl Weeder2weblogo INPUT_file ⇒INPUT_fileの拡張子は「.wee」にしておくこと。 (Weederからの出力ファイル「.wee」を利用しているので、拡張子を変更しないように。)〈ダウンロード先〉
・github -non-bioinformatician_NGS_analysis
https://github.com/Naoto-Imamachi/non-bioinformatician_NGS_analysis
0 件のコメント:
コメントを投稿