Jumat, 08 Oktober 2010

bioinformatika


USING PERL TO FACILITATE
BIOLOGICAL ANALYSIS
Zumrotus ,S
 
PENDAHULUAN

Perl atau Practical Extraction and Report Language dirancang oleh Larry Wall dipertengahan tahun 1980-an ketika ia ingin membuat bug-reporting system namun bahasa pemograman yang tersedia, seperti awk, tidak dapat memenuhi keinginannya. Larry bisa saja waktu itu menggunakan bahasa pemrograman seperti C atau C++, tetapi karena dia menginginkan agar system-nya itu bisa dijalankan melalui shell ala awk, akhirnya dia memutuskan untuk merancang bahasa baru yaitu Perl.
Secara umum, Perl bisa dikategorikan berada diantara bahasa pemograman tingkat tinggi (high-level programming language) seperti pemograman shell dan bahasa pemograman tingkat rendah (low-level programming language) seperti  C, C++ atau assembly. Program yang ditulis dengan bahasa pemrograman tingkat tinggi biasanya lambat dan sangat tergantung pada command yang disediakan oleh operating system. Sebaliknya, program yang ditulis dengan bahasa pemrograman tingkat rendah cendrung lebih cepat, namun lebih sulit dalam menuliskannya, walau hampir semua hal dapat ditulis dengan bahasa pemrograman level ini. Perl dirancang untuk menjembatani ketimpangan diantara kedua level bahasa pemrograman di atas.
Setiap bahasa pemograman pasti memiliki kelebihan dan kelemahan, karena keunggulan suatu bahasa pemograman sangat tergantung pada persoalan apa yang ingin diselesaikan. Perl sangat cocok digunakan untuk menyelesaikan persoalan yang berkaitan dengan teks. Lebih kurang 90% dari kemampuan Perl memang dioptimalisasikan untuk menyelesaikan persoalan-persoalan yang berhubungan dengan teks, sementara sisanya, 10%, untuk menyelesaikan persoalan-persoalan diluar teks [2]. Bagi para peneliti di bidang bioinformatika, Perl merupakan tool utama dalam melakukan pattern matching dari gen dalam DNA. Sebagaimana kita ketahui, gen merupakan rangkaian nucleotide yang secara formal disimbolkan menggunakan gabungan karacter A (adenine), T (thymine), C (cytosine), dan G (guanine), seperti yang digambarkan pada gambar berikut:
Gambar 1. Ilustrasi DNA [2].
Untuk mengetahui apakah terdapat gen tertentu dalam sebuah DNA, tentunya kita harus mencari pattern (yang merupakan kumpulan dari karakter-karakter A, T, C, G) di dalam DNA tersebut. Sebagai gambaran, perhatikan potongan program berikut ini:
     1     my $sequence = 'CTAATGGA';
    2     $pattern = 'ATG';
    3     if($sequence =~ /$pattern/){
    4       print "Pattern $pattern ditemukan dalam sequence $sequence\n";
    5     } 
    6     else{
    7       print "Pattern $pattern tidak ditemukan dalam sequence $sequence\n";
    8     }
Pada baris ke 1 dan ke 2 di atas, sebuah skalar $sequence dengan nilai CTAATGGA dan skalar $pattern dengan nilai ATG dideklarasikan. Pengecekan apakah pattern ATG terdapat dalam sequence CTAATGGA dapat dengan mudah dilakukan menggunakan fasilitas pattern matching. Menggunakan binding operator, =~, seperti yang dilakukan pada baris ke 3 di atas, Perl memeriksa dengan sangat efisien apakah dalam skalar $sequence terdapat pattern ATG. Untuk contoh di atas, pattern ATG ada dalam sequence CTAATGGA, sehingga pernyataan "Pattern ATG ditemukan dalam sequence CTAATGGA" akan ditampilkan dilayar monitor.
Sebenarnya, untuk contoh kasus di atas, bahasa C atau bahasa pemograman lainnya juga dapat digunakan. Namun akan lebih rumit dan panjang. Bila ditulis dengan bahasa C, sudah jelas kita harus berurusan dengan pointer dan iterasi yang memeriksa satu per satu apakah setelah karakter A dua karakter selanjutnya adalah karakter T dan G.  Untuk kasus-kasus manipulasi teks, menggunakan Perl jauh lebih mudah. Fungsi tr atau translate dari Perl dapat mengubah setiap karakter yang dimaksud dengan sangat mudah.
    tr///
Fungsi tr menerjemah setiap karakter yang ditemukan di menjadi karakter yang bersesuaian posisinya di bagian . Jadi untuk contoh kasus kedua ini, hanya dengan satu pernyataan saja, perubahan karakter dapat diselesaikan.
    $sequence =~ tr/ACGT/TGCA/;
Bila pada awalnya sequence DNA adalah CTAATGGA, maka dengan pernyataan di atas, sequence DNA berubah menjadi GATTACCT.
Masih banyak lagi keunggulan-keunggulan Perl, yang tentunya tidak mungkin kita bahas semuanya dalam tulisan ini. Namun penulis ingin menyampaikan bahwa begitu powerful-nya kemampuan Perl dalam memanipulasi teks dan file, termasuk dalam membuat cgi (common gateway interface). Selain itu, Perl juga merupakan tool yang sangat tepat untuk merancang prototype suatu algoritma. Benar memang kalau Perl bukanlah tool untuk semua hal. Perl bukanlah bahasa pemograman yang tepat untuk merancang kernel, tidak pula untuk merancang program client-server yang membutuhkan penanganan thread dan memori poll yang efisien.
Perl dijalankan menggunakan interpreter. Interpreter Perl disebut perl Script (menggunakan huruf kecil semua). Perl tidak memiliki compiler yang dapat mengubah source code menjadi bahasa mesin (binary code). Program yang ditulis dengan Perl dapat dilihat dengan mudah oleh orang lain yang menjalankan program tersebut. Selain itu, tidaklah efisien menulis program yang sangat panjang (mungkin lebih dari 10,000 baris) menggunakan Perl bila program yang ditulis tersebut dijalankan berulang-ulang sebanyak ratusan atau bahkan ribuan kali per menit. Hal ini disebabkan karena setiap program tersebut dijalankan, interpreter perl harus menerjemahkannya ke dalam bytecode yang dipahami oleh compiler internal perl.


MEMULAI PROGRAM

Perl adalah suatu program yang dapat digunakan dalam berbagai sistem operasi, seperti Macintosh, UNIX dan Windows. Dalam pembahasan nanti, akan lebih di titik beratkan pada pengunaan dalam sistem Operasi Windows.
Program processing word apapun dapat digunakan untuk mengoperasikan program ini selama file disimpan dalam bentuk text only. Pada Windows, Notepad adalah program yang baik untuk menunjang pengoperasian Perl Programming, sepanjang file tersebut disimpan dalm format text only. Dan penamaan file ini harus diakhiri dengan .pl, yang merupakan perjanjian standar penamaan scripts Perl. Dan penyimpanan dilakukan di directory pada command-prompt. Atau directory pada command-prompt diubah sesuai dengan letak file. Sedangkan, untuk me-run program ini, buka command-line window, atau jika pada Windows, buka command prompt.

Contoh:
Notepad diisi ketikan sebagai berikut, kemudian disimpan pada C:Documents and Settings\zuma.




                         Gambar 1. Tampilan Notepad untuk file first.pl

File baru ini terdiri dari dua baris. Baris pertama adalah comment yang menandakan bahwa file merupakan Perl script (diindikasikan dengan #! Pada awal baris). Baris kedua adalah print statement yang memberitahu Perl untuk menampilkan kalimat yang berada diantara tanda petik dua.
Lalu, pada command prompt diketik
Perl –w filename.pl
Sehingga tampak tampilan berikut:




Gambar 2. Tampilan Command Prompt setelah file first.pl dipanggil melalui
  command Perl –w filename.pl



BAGAIMANA SCRIPT BEKERJA

Sebuah script terdiri dari sederet commands, yang lebih formal disebut statement, yang sangat bermakna untuk Perl interpreter. Atau dengan kata lain, interpreter dimulai dari atas kemudian bekerja kebawah dan mengeksekusi setiap statement sesuai urutannya.
Berikut merupakan tampilan awal script Perl versi 3:
1.      Untuk bagian General, terdapat tampilan berikut:

Gambar 3. Tampilan General Perl script versi 3
2.      Untuk bagian Program, terdapat tampilan berikut:

Gambar 4. Tampilan Program Perl script versi 3
3.      Untuk bagian Tools, terdapat tampilan berikut:
 
Gambar 5. Tampilan Tools Perl script versi 3

Contoh:
#!/usr/bin/perl
#preamble...
print"I can do math!\n";
#do some calculation
$sum=3+4;
#print the result
print"The sum of 3+4 is ",$sum,".\n";

program diatas akan menghasilkan input berupa:
I can do math!
The sum of 3+4 is 7.
Jika menggunakan notepad, maka diperoleh:

Gambar 6. Tampilan Notepad dari file second.pl

Dalam notepad muncul #, yang berarti komentar. Maksudnya adalah statement di belakang tanda # tidak dieksekusi oleh Perl. Kemudian statement pada notepad tersebut di-run di command prompt sebagai berikut:
Gambar 7. Tampilan Command Prompt setelah file second.pl dipanggil melalui command Perl –w filename.pl
Jika dipergunakan perl script, maka tampilannya sebagai berikut:
Gambar 8. Tampilan Perl Script untuk program dalam file second.pl
 

STRING, BILANGAN, DAN VARIABEL

String
Istilah dalam Perl untuk text adalah string. String dalam Perl ditandai dengan adanya tanda kutip baik single maupun doble. Biasanya string diapit oleh tanda kutip tersebut.
Contoh:
#!/usr/bin/perl
print"Anna,\nShe wailed\tcome quickly!\tThe tiara is gone!\n";
#again
print'Anna,\nShe wailed\tcome quickly!\tThe tiara is gone!';        
#again
print'
Anna,
She wailed    come quickly! The tiara is gone!';  

Output yang akan dihasilkan adalah:
Anna,
She wailed    come quickly! The tiara is gone!
Anna,\nShe wailed\tcome quickly!\tThe tiara is gone!
Anna,
She wailed    come quickly! The tiara is gone!

Jika program diatas dieksekusi menggunakan notepad, maka akan didapatkan tampilan berikut:

Gambar 9. Tampilan Notepad dari file string1.pl
Seperti terlihat dalam gambar diatas, file notepad tersebut disimpan dengan nama string1.pl, ingat bahwa .pl harus selalu dibubuhkan dalam penamaan file. Hal ini dimaksudkan untuk menandai bahwa file yang kita simpan dalam bentuk script perl.
Lalu, ditampilkan pada command prompt sebagai berikut:
Gambar 10. Tampilan Command Prompt setelah file string1.pl dipanggil melalui command Perl –w filename.pl

Jika dalam string ingin ditambahkan character spesial lain seperti tabs atau baris baru, Perl menyediakan escape sequence istimewa untuk merepresentasikannya. Diantaranya adalah \n dan \t. Dimana \n merepresentasikan baris baru sedang \t merepresentasikan tab. sebagaimana yang telah dicontohkan diatas.
Jika ditampilkan dalam bentuk perl script langsung, maka akan muncul tampilan sebagai berikut:
Gambar 11. Tampilan Perl Script untuk program dalam file string1.pl
Number
Perl dapat bekerja dengan berbagai macam tipe data bilangan, seperti integer, floating point number, bilangan kompleks, dan bilangan biner. Tidak ada yang istimewa pada penulisan atau pengekspresian sebuah bilangan dalam Perl, seperti yang tampak pada contoh berikut:
1
49
28.2
-109
6.04E23
Pada contoh yang terakhir, E berarti exponen, dan bilangan tersebut adalah     6.04  10 23 .

Variabel
Variabel merupakan penyimpanan sementara dari string, bilangan, dan nilai-nilai yang lain. Dalam Perl, variabel diberi nama secara sebarang dan didahului dengan tanda dollar. Ketika variabel pertama kli didefinisikan, variabel awalnya kosong atau tak ditentukan batas-batanya. Nilai ditentukan ke variabel dengan menggunakan tanda ’=’. Contoh penulisan variabel telah diberikan sebelumnya dalam Gambar 6.


ARITMATIKA

Perl mengenali aritmetic dasar. Simbol-simbol yang disebut operator berkaitan dengan operasi aritmatika, seperti:
+    penjumlahan
–    pengurangan
*    perkalian
/     pembagian
**  eksponensiasi
( )   grouping
Contoh:
#!usr/bin/perl
$x=4;
$y=2;
$z=3+$x*$y;
print "The value of z is ",$z,".\n";

Program diatas akan memebrikan output:
The value of z is 11.

Dengan menggunakan Perl Script, maka akan didapatkan tampilan sebagai berikut:

Gambar 12. Tampilan contoh penggunaan operasi aritmatika pada perl script

INTERPOLASI VARIABEL

Yang menarik dari perbedaan antara tanda petik double dan single adalah tentang apa yang terjadi ketika sebuah variabel disisipkan ke dalam string. Pada string dengan tanda petik double, variabel diperluas ke isinya, proses ini dikenal dengan interpolasi string. Jika tidak ingin menampilkan nilai variabel, maka dalam string dengan tanda petik double harus dibubuhi tanda backslash didepan variabel yang akan diinterpolasikan.
Sedangkan dalam string dengan tanda petik single, tidak bekerja pada model ini. Artinya variabel hanya akan dibaca secara harfiah, bukan sebagai suatu variabel yang memiliki nilai.
Contoh:
#!usr/bin/perl
$x=4;
$y=2;
$z=3+$x*$y;  
$p=17*$x*$y-$z;
$s=15-$x+7*$y;
print "The value of z is ",$z,".\n";
print 'The value of p is ',$p,".\n";
print 'The value of s is $s.';
 Program tersebut akan memberikan output:
The value of z is 11.
The value of p is 125.
The value of s is $s.

Gambar 13. Perbedaan dalam string  dengan tanda petik double dan single
Interpolasi variabel hanya berlaku pada konten dari vareiabel itu sendiri. Perl tidak akan menghitung ekspresi aritmatika atau statement program lain yang disisipkan diantara string dengan tanda petik double. Contohnya sebagai berikut:

#!usr/bin/perl
$x=4;
$y=2;
print "The value of z is $x+$y ";

program di atas akan memberikan output:
The value of z is 4+2

Seperti tampak pada Gambar berikut:


Gambar 14. Tampilan Perl script yang tidak mengeksekusi statement program lain yang disisipkan diantara string dengan tanda petik double.


INPUT DAN OUTPUT DASAR

Input, dalam bahasa pemrograman, merupakan bagaimana data diambil dan dimasukkan dalam script. Sedangkan output adalah hasil keluaran dari script. Banyak script yang melakukan keduanya, meng-input data dari suatu source dan meng-output ke data lainnya.
Cara utama untuk meng-output adalah dengan menggunakan fungsi print. Print merupakan fungsi yang diikuti spasi dan satu atau beberapa argument yang dipisahkan dengan koma dan mengirimnya ke current output device, yang berada secara default pada layar komputer. Print hanya akan bekerja pada ekspresi string, bilangan dan variabel. Sedangkan cara utama untuk meng-input data adalah dengan menggunakan operator kurung sudut (<>), yang akan dibaca sebagai barisan input dari current input device.

Contoh:
#!usr/bin/perl
#input name by user
print "Enter your name:";
$name=<>;
chomp $name;
print "Hello $name!\n";
print "It's been so nice to meet you.";

Diharapkan program ini akan memberikan tampilan sebagai berikut:
Enter your name: zuma
Hello, zuma!
It's been so nice to meet you.

Dalam notepad, akan diperoleh tampilan berikut. Dimisalkan file disimpan di directory D dengan nama name1.pl.

Gambar 15. Tampilan program name1.pl dalam notepad

Tapi, program ini harus di run di command prompt. Jika dieksekusi langsung di perl script, akan muncul command berikut:

Gambar 16. Tampilan command pada perl script saat running program input data dilaksanakan.

Selanjutnya, jika di-run dengan menggunakan command prompt akan diperoleh tampilan berikut:


Gambar 17. Tampilan command prompt ketika mengeksekusi program dalam name1.pl
MAKING DECISION

Seringkali, terdapat path berbeda yang mengikuti jika sebagian kondisi terpenuhi (true ataupun benar). Ketika input yang dimasukkan oleh user tidak masuk akal untuk tetap dieksekusi, maka perlu diberikan batasan pada input yang akan dimasukkan oleh user. Dengan kata lain menolak inputan yang tidak diinginkan. Salah satu caranya tampak pada program berikut:

#!/usr/bin/perl
print “Enter your age: ”;
$age = <>;
die “Yor age doesn’t reasonable” if $age <= 0 or $age >= 100;
print “Your age in month is ”,$age*12,“\n”;

Selanjutnya, program diatas diketik pada notepad atau stratch pad pada perl script tool, kemudian disimpan (misalnya di directory D dan dengan nama age2.pl), maka program tersebut akan memberikan output sebagai berikut:

Gambar 18. Tampilan output program age2.pl

Pada program diatas, terdapat fungsi die dalam baris keempat. fungsi ini adalah fungsi untuk mematikan kerja dari command print. Fungsi ini terdiri dari dua bagian. Bagian pertama  die “Yor age doesn’t reasonable” dan yang kedua adalah if $age <= 0 or $age >= 100. Fungsi die akan dilaksanakan jika kondisi yang menyertainya pada bagian kedua terpenuhi. Namun jika tidak terpenuhi, maka fungsi print yang akan dieksekusi dan fungsi die akan diabaikan.
Perl memiliki operator perbandingan yang lengkap, seperti tampak pada tabel berikut:
Tabel 1. Operator perbandingan numeric yang dimiliki Perl
Selain itu, Perl juga mengenal operator perbandingan string yang juga lengkap. Ditampilkan dalam tabel berikut:
Tabel 2. Operator perbandingan string pada Perl
Contoh penggunaan operator perbandingan string pada perl:
#!usr/bin/perl
print "Enter your name:";
$name=<>;
chomp $name;
print "Hei $name! \nIts nice to meet you.\n";
print "You're look so gorgeous!", if $name eq "zuma";

Program tersebut akan memberikan output berikut (jika disimpan dengan nama file name2.pl):

Gambar 19. Tampilan running program name2.pl



CONDITIONAL

Script Perl jugamenyediakan fungsi conditional. Dimana beberapa statement dieksekusi secara conditional. Eksekusi ini dapat dilakukan dengan dua cara yaitu menggunakan statement if atau if else. Contoh penggunaan if telah dicontohkan sebelumnya pada age2.pl. Berikut akan diberikan contoh penggunaan if else dalam ekspresi conditional.
#!/usr/bin/perl
print "Enter your age:";
$age = <>;
if ($age > 0 and $age <= 5)
     {print "You're too young to use the computer!.\n";}
elsif ($age < 0 or $age >= 100)
     {print "That age doesn't reasonable to me.\n";}
else
     {print "Your age in month is ",$age*12,"\n";}

Program tersebut mempunyai fungsi conditional di dalamnya. Yaitu, jika umur yang dimasukkan lebih dari nol tapi kurang dari 5, maka akan muncul command You're too young to use the computer!, jika umur yang dimasukkan oleh user kurang dari nol atau lebih dari 100, maka akan muncul command That age doesn't reasonable to me. Sedangkan jika umur yang lain, akan menghasilkan output berupa nilai umur dalam bulan.
Jika ditampilkan dalam notepad, maka akan diperoleh output sebagai berikut:

Gambar 20. Tampilan notepad dari program age3.pl
Gambar 21. Tampila output proram age3.pl dengan 3 kali percobaan pemasukan data





LOOP

Pernyataan conditional memungkinkan modifikasi dalam menjalankan programnya, sedemikian hingga bagian kode dapat dieksekusi atau diabaikan selama diperlukan. Perl dan beberapa bahasa pemrograman yang lain mengenal hal yang demikian ini sebagai loops. Perl memiliki banyak perbedaan tipe looping. Yang paling sering digunakan adalah fungsi while. Fungsi while terlihat sama seperti fungsi if. Tapi pada if, statements akan dieksekusi sekali jika persyaratan terpenuhi. Sedang dalam while satatements akan diulang berkali-kali selama persyaratan dipenuhi.
Contoh penggunaan fungsi while sebagai loops function:

#!/usr/bin/perl
$count = 1;
print "There's an apple.\n";
$count = $count + 1;
while ( 1 < $count and $count <=7)
     {print "There are $count apples.\n";
     $count = $count + 1;}
Jika di-run, maka program tersebut akan memberikan output:

Gambar 22. Tampilan output program dalam perl Script

MENGGABUNGKAN LOOPS DAN INPUT

Fungsi loop akan sangat berguna jika dikombinsikan dengan statement input. Seperti dalam contoh berikut:

#!/usr/bin/perl
print "Type something ";
$line = <>;
while (defined ($line))
     {print "You typed $line \n\n";
     print "Type something ";
     $line = <>;}

Program tersebut akan mengembalikan apa yang diinputkan oleh user, dan selama user masih memasukkan input, maka program ini akan terus berjalan. Untuk menghentikan jalannya pogram ini, pada sistem windows, hal ini dilakukan dengan mengetik control-z (^z).
Jika program tersebut setelah disimpan dalam bentuk .pl melalui notepad, maka di command prompt, program tersebut akan menghasilkan output berikut:

Gambar 23. Tampilan output program loop3.pl dengan melakukan dua kali input


MENCARI PANJANG DARI SUATU SEQUENCE

Salah satu kegunaan Perl adalah pada bidang biologi. Salah satu contohnya adalah dalam pengeksekusian sequence DNA yang besar berformat huruf-tunggal. Sequence ini panjangnya belum diketahui, dan ingin dicari jumlah baris dalam sequence-nya. Comtph berikut akan mempermudah pemahaman.

#!/usr/bin/perl
# length2.pl
print "Masukkan character: ";
$length = 0; # set length counter to zero
$lines = 0; # set number of lines to zero
while (<>) { # read file one line at a time
print "Masukkan character: ";
chomp; # remove terminal newline
$length = $length + length $_ ;
$lines = $lines + 1;
}
print "LENGTH = $length\n";
print "LINES = $lines\n";

Tampilan notepad-nya sebagai berikut:

Gambar 24. Tampilan program length2.pl dalam notepad

Dalam program diatas, terdapat fungsi length. Fungsi dilibatkan untuk mendapatkan panjang dari baris suatu string dengan menghilangkan enter (tanda enter atau baris baru tidak diperhitungkan). Jika di-run menggunaka command prompt dan meng-input-kan sequence dari aureus FabH (3IL7), maka akan diperoleh output program berikut:

Gambar 25. Tampilan output dari program length2.pl menggunakan command prompt.

Data yang dimasukkan ke dalam program untuk dieksekusi, diperoleh dari BLAST dimana data ini berbentuk fasta. Hasil diatas sesuai dengan data panjang DNA yang diperoleh dari BLAST, yaitu 313.


PENCOCOKAN POLA

Pencocokan pola adalah perbandingan text string yang khusus. Pencocokan pola ini cenderung mirip dengan fungsi eq, tapi sebagai ganti pencocokan yang persis sama dari dua string. Pencocokan pola ini menguji sebuah string dan sebuah pola. Berikut ini adalah contoh pencocokan pola (matching patern) dalam stracthpad dan di-run di command prompt.

#!/usr/bin/perl
# length2.1.pl
print "masukkan sequence: \n";
$dna = <>;
if ($dna =~/SFAG/)
{print "ditemukan patern yang dimaksud dalam sequence";}
else {print "patern tidak ditemukan dalam sequence";}

Gambar 24. Contoh program matching patern

(a)

(b)
    Gambar 26. (a). Contoh output pattern matching ketika input yang dinerikan adalah
                     penggalan dari sequence Saccharomyces cerevisiae (2WAS)
 (b). Contoh output pattern matching ketika input yang dinerikan adalah penggalan dari sequence aureus FabH (3IL7)

Contoh lainnya adalah sebagai berikut:

#!/usr/bin/perl
# length2.2.pl
print "masukkan sequence: \n";
$dna = <>;
if ($dna =~/GG[VTAG]/)
{print "ditemukan patern yang dimaksud dalam sequence";}
else {print "patern tidak ditemukan dalam sequence";}

(a)

(b)


(c)
Gambar 27.    (a). Program patern matching dalam statchpad                                                                                                             
  (b). Contoh output pattern matching ketika input yang diberikan adalah penggalan dari sequence Saccharomyces cerevisiae (2WAS)
  (c). Contoh output pattern matching ketika input yang dinerikan adalah penggalan dari sequence aureus FabH (3IL7)
 

TRANSLETE PATTERN

Seperti yang telah disebutkan sebelumnya, bahwa perl adalah program yang memberikan banyak kemudahan untuk mengeksekusi fungsi atas text. Salah satu kemudahannya adalah fungsi translate (tr) oleh perl script. Fungsi ini adalah fungsi yang dapat mengganti suatu character dengan character lainnya, sesuai dengan kebutuhan. Berikut adalah contoh penggunaannya:

#!/usr/bin/perl
print "masukkan sequence: \n";
$dna = <>;
if ($dna =~/SFAG/)
{print "ditemukan patern yang dimaksud dalam
 sequence\n";}
else {print "patern tidak ditemukan dalam sequence\n";}
$dna =~ tr/ACGT/TGCA/;
print "sequence setelah ditranslate: ",$dna,"\n";

Bila di-run dalam command prompt dengan memberikan input berupa penggalan sequence Saccharomyces cerevisiae 2WAS, maka tampilan yang diperoleh adalah sebagai berikut:


(a)

(b)
  Gambar 28. (a). Tampilan stratchpad dari matching4.pl
       (b). Contoh output pattern matching ketika input yang diberikan adalah penggalan dari sequence Saccharomyces cerevisiae (2WAS)
 

DAFTAR PUSTAKA

[1].       Baxevanis Andreas D., B.F. Francis Ouellette. Bioinformatics: A Practical Guide to the Analysis of Genes and Proteins, Second Edition. 2001. John Wiley & Sons, Inc.
[2].         http://www.bioperl.org/



Tidak ada komentar:

Posting Komentar