perl

perl復習

やらないとまた元に戻っちゃうので。

UPBSB6日目

Perl実習6日目は、Perl実戦-使い倒し系バイオインフォマティクス入門。ハッシュ重要、が改めて分かるがまだまだ弱い。。 自分の研究に今日の講義のような内容をどう応用していくか。

UPBSB5日目

Perl実習5日目はモジュールの利用と5日間の総まとめとしてMEDLINEの書誌情報からタンパク質名を抽出するという課題。さすがに難解。復習と継続学習が必須。

UPBSB4日目

Perl実習4日目は、正規表現を用いたパターンマッチ。 まっさらなところから書いて、いちおうながらも結果が出力されて感動。

UPBSB3日目

Perl実習3日目、ファイル入出力とサブルーチン。 書いてあることは理解できるものの、まっさらな状態から書き始めるのはまだまだ。応用問題ができるようにならねば。

UPBSB2日目

Perl実習2日目、早くも壁に遭遇。配列とかハッシュとか。

UPBSB1日目

Perl実習初日は導入編。この辺は割と戸惑うことなく。 番外編で、emacsで「M-x tetris」と打つとテトリスができることにちと感動。

mart_GO.prl

EnsMartで取ってきたGOのIDとaffyのアレイIDのヘッダー行を除いて、空白行も除いてカラムの順番を入れ替えるためのperlスクリプト。 つまりは、SpotfireのGene Ontology Browser用のGene annotation file formatへの変換用だったりする。。 #!/usr/bin/perl …

ファイル中のIDなどの出現数を数える

・count.prl #!/usr/bin/perl while(<>) { my($word) = split; $num{$word}++; } foreach (sort keys %num) { print "$_\t$num{$_}\n"; } ・candidate.txtの1列目のカラム(IDの列)を抜き出して、IDの数を数えて、その数(2列目)を数値的に降順にしてソー…

計算ドリル

をひたすら解き続ける小学生の夏休みのような今日この頃。だいぶ書き方とか礼儀作法が分かってきた感はあるが、@とか$とかに入れたり出したりのイメージがまだスムーズじゃない。 とはいえ近道は小学校の頃と同じで、ただひたすら計算ドリルを解き続けるの…

0とO

数字の0(ゼロ)とアルファベットのO(オー)を打ち間違えてたことに気付かずに、構文エラーをクリアするのに1時間以上費やしてしまった…orz。 キーボードの位置も近いしフォントによっては区別がつきにくい(今回はコレ)ので要注意、と自戒。

program it yourself

モノの本を見ながら手を動かしていても、いまいち理解しにくいところにちょいちょい遭遇したので、いろいろ探してみると初心者向けの分かりやすいwebページ(研究に使うプログラムを Perl で書こう)を発見。 このページ中の『自分の研究に使うプログラムを…

全自動洗濯機だ!!

しかも超高速な。 ちょっとしたシェルスクリプトで自動処理を実現できたときの率直な感想。今までexcelとテキストエディタを使って、ちまちまごにょごにょと少なくとも30分以上は費やしていた作業プラスreciplocal best hit探索を加えても、ぽちっとenter押…

reciprocal best hit

とりあえず、この間の本は必要な部分をかいつまんでざーっと読破。でもやっぱりモチベーションという面で本を見ながらでは正直イマイチなので、次の段階として自分のデータを使って、いわゆるBLAST searchの双方向ベストヒットってやつを探索してみつつ、プ…

query配列とhitした配列からいろいろと取り出して表示する

#!/usr/local/bin/perl while ($buffer = ) { if ($buffer =~ /^Query=/) { $buffer =~ s/^Query=//; @query_list = split (/\s/, $buffer); $query_list[0] =~ s/\|$//; print "Query seq:\t".$query_list[0]."\n"; } if ($buffer =~ /^>/) { $buffer =~ s/…

写経

まずは簡単なプログラムを書いてみて、基本的な礼儀作法を知るところから。☆正規表現で行頭の"Query="を""で置換する(削除する) #!/usr/local/bin/perl while ($buffer = ) { if ($buffer =~ /^Query=/) { $buffer =~ s/^Query=//; print $buffer; } } こ…

Perlその2

大きなmultifasta形式のファイルを100コずつのmultifastaのファイルに分割する呪文。 #!/usr/bin/perl my $i = 0; my $file = "sequence"; while() { chomp; my $string = $_; if($string =~ /^\>/) { $i++; if($i % 100 == 1) { close FILE; open(FILE, ">$…

Perl記念日

BLASTの結果から各問い合わせ配列のtop hitだけをとりたい、ってとき。 #!/usr/bin/perl my $prev_query = ''; while(<>) { my($query) = split(/\t/); if($query ne $prev_query) { print $_; } $prev_query = $query; } 昨日、BLASTのオプションを探し回っ…