Re: [問題]關於bioperl:::clustalW

看板Perl作者 (待救的小米)時間21年前 (2004/10/02 06:43), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/11 (看更多)
※ 引述《plankton (我..憑什麼)》之銘言: : ※ 引述《seagal (待救的小米)》之銘言: : 這位大大..首先非常謝謝你回答我的問題 : : 這是我從tutorial cut下來的 : : -------------------------------- : : use Bio::Tools::Run::Alignment::Clustalw; : : @params = ('ktuple' => 2, 'matrix' => 'BLOSUM'); : : $factory = Bio::Tools::Run::Alignment::Clustalw->new(@params); : : $ktuple = 3; : : $factory->ktuple($ktuple); # change the parameter before executing : : $seq_array_ref = \@seq_array; : : # where @seq_array is an array of Bio::Seq objects : : $aln = $factory->align($seq_array_ref); : : -------------------------------- : : 你要不要先學tutorial方式 : : 先把序列存到@seq_array : : 再去MSA? : ^^^? Multiple Sequence Alignment ClustalW就是一種MSA : 很抱歉我不知道什麼是MSA..全文是...^_^|| : 關於tutorial的方式..我大都已經用過了.. : 所以這個我也試過了^_^|||... : : 這樣最保險 因為我想你也是做練習用途 : 那個....其實並不是上課練習用之類的...謝謝...對我來說非常重要 : : 另外 我這邊有一些之前去國高教書的範例檔 : : 剛好就沒有clustalW : : 但有其他範例 例如blast : : 都是確定可以跑的 : : 看你有沒需要拿去練習 : 好啊~~實在太感謝了...有關blast的程式都好 : 多看看說不定能找出什麼端倪..謝謝你^_^ 如果你不是練習用途的話 建議你可以直接在linux下面使用ClustalW執行檔跑出結果 再利用AlignIO去處理出來的結果 ex. use Bio::AlignIO; my $io = Bio::AlignIO->new(-file => "receptors.aln", -format => "clustalw" ); 因為你使用ClustalW模組 他還是必須要去呼叫ClustalW執行檔的 我不知道你的問題是否出在 你有沒正確安裝這個執行檔 而且clustalw執行方式很簡單 所以我才沒有使用過bioperl的這個模組 你利用外部呼叫(ex `clutalw`, system('clustalw'))去執行他 以及使用ClustalW模組 根據我的經驗 兩種寫出來的程式碼是差不多簡單的 是工作而不是練習需要 就不一定要堅持用bioperl完成摟~~~ 事情做的出來就好 下面貼給你blast範例 有分兩個部分 1. local執行 2. under internet --------------------------------------------------- #!/usr/bin/perl use Data::Dumper; use Bio::Tools::Run::StandAloneBlast; @params = ('program' => 'blastn', 'database' => 'ecoli.nt'); $factory = Bio::Tools::Run::StandAloneBlast->new(@params); $input = Bio::Seq->new(-id =>"test query", -seq =>"AACGGGCAATATGTCTCTGTGT"); $blast_report = $factory->blastall($input); print Dumper($blast_report); while (my $sbjct = $blast_report->nextSbjct){ while (my $hsp = $sbjct->nextHSP){ print $hsp->score . " " . $hsp->subject->seq_id . "\n"; print $hsp->bits, "\n"; print $hsp->percent, "\n"; print $hsp->P, "\n"; print $hsp->match, "\n"; print $hsp->positive, "\n"; print $hsp->length, "\n"; print $hsp->querySeq, "\n"; print $hsp->sbjctSeq, "\n"; print $hsp->homologySeq, "\n"; print $hsp->query->start, "\n"; print $hsp->query->end, "\n"; print $hsp->hit->start, "\n"; print $hsp->hit->end, "\n"; print $hsp->hit->seq_id, "\n\n"; } } =head use Bio::Tools::Run::RemoteBlast; $remote_blast = Bio::Tools::Run::RemoteBlast->new( '-prog' => 'blastp','-data' => 'ecoli','-expect' => '1e-10' ); $r = $remote_blast->submit_blast("ecolitst.fa"); while (@rids = $remote_blast->each_rid ) { foreach $rid ( @rids ) {$rc = $remote_blast->retrieve_blast($rid);} } =cut -- http://140.109.73.177/待救的小米.mht -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.109.73.177 ※ 編輯: seagal 來自: 140.109.73.177 (10/02 06:53) ※ 編輯: seagal 來自: 140.109.73.177 (10/02 06:58)
文章代碼(AID): #11NTsTSD (Perl)
討論串 (同標題文章)
文章代碼(AID): #11NTsTSD (Perl)