生物資訊學基礎 包括Perl

2021-08-20 19:46:28 字數 3529 閱讀 9759

1.生物資訊學:將電腦科學和數學應用於生物大分子資訊的獲取、加工、儲存、分類、檢索與分析,以達到理解這些生物大分子資訊的生物學意義的交叉學科。

2.基本方法:

搜尋資料庫(blast、blat)

序列分析(比對、注釋、找gene)

統計分析(隱馬爾可夫模型hmm、貝葉斯分析模型)

演算法(遺傳演算法、人工神經網路)

數學模型(確定性模型、隨機模型)

3.perl是指令碼語言,內部整合了正規表示式的功能以及巨大的第三方**庫cpan。文字處理強大,模式匹配(正規表示式)

4.簡單變數:整型(最常用)  $x=10

浮點數:11.4,-0.9,54.1e+2,3.2e09     $value = 9.01e+21 + 0.01 -9.01e+21;

字串:$number = 11;$text =「this text contains the number $number.」;則$text的內容為:「this text contains the number 11.」                       特殊字串:\n: 回車換行                   \t: 製表符tab

5.操作符:

5.1算術操作符:+ - * / % **(乘冪)  -(單目負)

5.2整數比較操作符:<   >   ==   <=    >=     !=      <=>(比較,返回1,0,-1)

5.3字串比較操作符:  lt(小於)     gt(大於)     eq(等於)   le(小於等於)    ge(大於等於)   ne(不等於)    cmp(比較,返回1,0,-1)

5.4邏輯操作符: 邏輯或:$a||$b  或$a or $b

邏輯與:$a && $b 或 $a and $b

邏輯非:! $a  或 not $a

邏輯異或: $a xor $b

5.5賦值操作符:=   +=   -=   *=    /=   %= 

6.列表:包含在括號裡的一串行的值,可以為任何數值,可以為空。(1, 5.3 , "hello" , 2),空列表:()

列表儲存在陣列變數  

陣列變數以@開頭         @array=(1,2,3)

訪問陣列:對陣列中的值通過下標訪問,從0開始,訪問值時,通過標量變數的方式訪問。

e:   取陣列@array的第二個元素為$array[1];

將4存為@array的第四個元素為$array[3]=4;

7.關聯陣列(雜湊表):用任意簡單變數值來訪問其元素。

訪問關聯陣列的元素:訪問單個元素以$開頭,下標用{}圍起來。e:$fruit

增加元素:$fruit=20;

刪除元素:delete($fruit);

關聯陣列迴圈:foreach $price(keys(%fruit))

$record=$fruit;

8.檔案讀寫

open(filevar,filename),filevar為檔案控制代碼或程式中用來代表某檔案的代號,filename為檔名,路徑可為相對路徑也可為絕對路徑,開啟檔案必須決定訪問模式,perl中有3種訪問模式,讀、寫和新增

open(file1,"file1");  讀檔案開啟模式

open(file1,">file1") 寫檔案開啟模式

open(file1,">>file1")  向檔案中新增開啟模式

讀檔案:while($line=)

$line為檔案每一行的內容

寫檔案:

open(file1,">outfile");

print file1 ("here is an output line.\n");

關閉檔案:close file1;

9.正規表示式:用來描述或匹配一系列符合某個句法規則的字串。用來篩選,提取、替換字串中的特定內容。

10.條件判斷

if ( )

{}elsif ( )

{}else{}

迴圈:while迴圈

while ( ) {}

for迴圈

for ($count=1; $count <= 5; $count++)

11.perl 正規表示式語法

11.1由反斜線包含:/def/

11.2匹配操作符    =~(檢驗匹配是否成功)  !~(檢驗匹配是否不成功)

11.3模式中的特殊字元:

1、字元+ :+意味著乙個或多個相同的字元,如:/de+f/指def、deef、deeeeef等

2、字元[ ]和[^] :[ ]意味著匹配一組字元中的乙個,如/a[0123456789]c/將匹配a加數字加c的字串;[^ ]表示除其之外的所有字元,如:/d[^dee]f/匹配d加非e字元加f的字串

3、字元*和? :*匹配0個、1個或多個相同字元,?匹配0個或1個該字元

4、匹配任意字元:字元"."匹配除換行外的所有字元,通常與*合用

4、轉義字元:如果你想在模式中包含通常被看作特殊意義的字元,須在其前加斜線「\」。

5、匹配任意字母或數字:/[0-9a-za-z]/

6、錨模式:^ 或\a,僅匹配串首;$ 或\z 僅匹配串尾

12.兩種特殊操作符

替換操作符:s/pattern/replacement/

其效果為將字串中與pattern匹配的部分換成replacement。如:$string = "abc123def";$string =~ s/123/456/; # now $string = "abc456def";

翻譯操作符:tr/string1/string2/

string2為替換部分,但其效果是把string1中的第乙個字元替換為string2中的第乙個字元,把string1中的第二個字元替換為string2中的第二個字元,依此類推。如:

$string = "abcdefghicba";

$string =~ tr/abc/def/; # now string = "defdefghifed"

當string1比string2長時,其多餘字元替換為string2的最後乙個字元;

當string1中同乙個字元出現多次時,將使用第乙個替換字元。

13.轉義符

轉義字元                  描述                               範圍 

\d                         任意數字                           [0-9]

\d                  除數字外的任意字元                [^0-9]

\w                     任意單詞字元                   [_0-9a-za-z]

\w                    任意非單詞字元                [^_0-9a-za-z]

\s                            空白                              [ \r\t\n\f]

\s                           非空白                          [^ \r\t\n\f]

生物資訊學軟體 自學生物資訊學

我是生物工程專業出身,在大三保研時選擇了生物資訊的道路,到現在為止已經在行業裡摸爬滾打了6年的時間,在這6年的學習之路上疑惑過,也迷茫過,特此把我學習的過程以及遇到的問題總結出來以讓大家避免出現同樣的問題。在我學習生物資訊過程的基礎上帶著大家順暢的走一遍。在學習生物資訊學之前,我們先來了解一下什麼是...

生物資訊學(Bioinformatics)

生物資訊學 bioinformatics 這個名詞有許多不同的定義。從字面上來看,生物資訊學是將資訊科學應用於生物學。生物資訊學廣義的概念是指應用資訊科學研究生物體系和生物過程中資訊的存貯 資訊的內涵和資訊的傳遞,研究和分析生物體細胞 組織 器官的生理 病理 藥理過程的中各種生物資訊,或者說是生命科...

生物資訊學緒論

hgp第乙個五年總結報告 生物資訊學是一門交叉學科 它包含了生物資訊的獲取 加工 儲存 分配 分析 解釋等在內的所有方面,它運用數學 電腦科學和生物學的各種工具闡明和解釋大量資料所包含的生物學意義。美國喬治亞理工大學 生物資訊學是採用數學 統計學和電腦科學,分析生物學 生物化學和生物物理學資料的一門...