国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

BioJava–開源的生物信息學(xué)基礎(chǔ)庫

2019-11-18 11:15:44
字體:
供稿:網(wǎng)友

  什么是生物信息學(xué)?
  生物信息學(xué),這確實是個很酷的名字。
  從字面上理解,這是一門與生命科學(xué)和信息科學(xué)這兩個當今熱點領(lǐng)域都相關(guān)的學(xué)科。
  那到底什么是生物信息學(xué)?在這里,我只能很遺憾地告訴大家,對于這樣一門新興的、而且正在不斷發(fā)展和變化中的學(xué)科,我很難給出一個精確的定義。
  
  廣義地說,生物信息學(xué)從事對基因組研究相關(guān)生物信息的獲取、加工、儲存、分配、分析和解釋。這一定義包括了兩層含義,一是對海量數(shù)據(jù)的收集、整理與服務(wù),也就是管好這些數(shù)據(jù);另一個是從中發(fā)現(xiàn)新的規(guī)律,也就是用好這些數(shù)據(jù)。
  
  具體地說,生物信息學(xué)是把基因組 DNA序列信息分析作為源頭,找到基因組序列中代表蛋白質(zhì)和 RNA基因的編碼區(qū);同時,闡明基因組中大量存在的非編碼區(qū)的信息實質(zhì),破譯隱藏在 DNA序列中的遺傳語言規(guī)律;在此基礎(chǔ)上,歸納、整理與基因組遺傳信息釋放及其調(diào)控相關(guān)的轉(zhuǎn)錄譜和蛋白質(zhì)譜的數(shù)據(jù),從而熟悉代謝、發(fā)育、分化、進化的規(guī)律。
  
  信息技術(shù)的發(fā)展和應(yīng)用使得幾乎所有的人受益,研究DNA、RNA和蛋白質(zhì)的分子生物學(xué)家也不例外。很難相信,離開信息技術(shù),分子生物學(xué)家可以完成人類基因組的測序(事實上,大規(guī)模測序中所使用的鳥槍法確實依靠于計算技術(shù)),假如沒有信息技術(shù)和計算分子生物學(xué)的理論支持,研究SARS的病毒學(xué)家也不可能在短時間內(nèi)判定SARS病毒的種類歸屬(除非他們火眼精精能夠從數(shù)以百萬計的AGCT這幾個符號的雜亂無章的排列中找出規(guī)律)。
  
  生物信息學(xué)的本質(zhì)即使用各種信息技術(shù)來支持生命科學(xué)的研究與開發(fā)。
  
  Biojava簡介
  生物信息學(xué)在理論和工程上面臨許多挑戰(zhàn)。而要開發(fā)出復(fù)雜的生物序列分析系統(tǒng),需要一些基礎(chǔ)庫的支持,BioJava就是這樣的一套基礎(chǔ)庫。
  BioJava是使用Java語言開發(fā)的、用于分析和表示生物序列(如DNA、RNA和蛋白質(zhì))的基礎(chǔ)庫。BioJava提供了生物序列處理功能(如轉(zhuǎn)錄與翻譯)、文件格式轉(zhuǎn)換功能和一些簡單的科學(xué)計算(如隱馬爾科夫模型)。
  
  讀者可以從http://www.biojava.org 獲得更多的BioJava的介紹。另外,感謝北京大學(xué)生物信息學(xué)中心的吳欣(音譯),他將BioJava的入門文檔翻譯成了中文。
  
  轉(zhuǎn)錄―一個簡單的例子
  絕大多數(shù)生物都使用DNA來表達遺傳信息(諸如SARS病毒和艾茲病毒使用RNA表示遺傳信息)。但直接指導(dǎo)合成蛋白質(zhì)的確是信使RNA。在分子生物學(xué)上,復(fù)制過程中從DNA到RNA的過程被稱作轉(zhuǎn)錄(類似的,從RNA到DNA的過程叫做逆轉(zhuǎn)錄,逆轉(zhuǎn)錄過程通常出現(xiàn)在以SARS病毒和艾茲病毒為代表的RNA病毒復(fù)制過程中),如圖1。
  
  下面這段代碼使用BioJava庫來獲得一段DNA序列所對應(yīng)的RNA序列。
  
  import org.biojava.bio.symbol.*;
  import org.biojava.bio.seq.*;
  
  public class TranscribeDNAtoRNA {
  
  public static void main(String[] args) {
  try {
  //make a DNA SymbolList
  SymbolList symL = DNATools.createDNA("atgccgaatcgtaa");
  
  //transcribe it to RNA
  symL = RNATools.transcribe(symL);
  
  //just to PRove it worked
  System.out.println(symL.seqString());
  }
  catch (IllegalSymbolException ex) {
  //this will happen if you try and make the DNA seq using non  IUB symbols
  ex.printStackTrace();
  }
  catch (IllegalAlphabetException ex) {
  //this will happen if you try and transcribe a non DNA SymbolList
  ex.printStackTrace();
  }
  }
  }
  
  上面代碼中,我們首先創(chuàng)建了一個DNA序列對象,該序列的內(nèi)容為atgccgaatcgtaa。然后調(diào)用RNATools.transcribe()方法獲得轉(zhuǎn)錄后的RNA序列。由于轉(zhuǎn)錄過程中DNA序列與RNA序列是一一對應(yīng)的,且兩個字符集中的符號映射關(guān)系也是確定的,所以這個方法的實現(xiàn)其實十分簡單。當然,BioJava中也提供了諸如HMMER的更復(fù)雜的功能,有愛好的讀者可以參考BioJava網(wǎng)站。
  
  相關(guān)閱讀材料
  假如你是一名軟件工程師并且對生物信息學(xué)有愛好的話,你可能需要了解更多的分子遺傳學(xué)方面的知識。科學(xué)出版社的《基因組》是一個不錯的選擇,影印版的《分子生物學(xué)精要》也相當不錯,前提是你要做好背專業(yè)詞匯的預(yù)備。全美經(jīng)典的《分子生物學(xué)和細胞生物學(xué)》則是不錯的參考書。
  
  假如你有生命科學(xué)領(lǐng)域的背景,你或許需要把握更多的計算機科學(xué)方面的技能?!渡镄畔W(xué)中的計算機技術(shù)》是很好的入門材料。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 河曲县| 徐州市| 铜梁县| 乐都县| 永兴县| 江阴市| 洪湖市| 南华县| 郑州市| 蓬溪县| 都江堰市| 黑龙江省| 鹰潭市| 铁岭县| 临邑县| 安塞县| 遂溪县| 寿阳县| 万山特区| 湘乡市| 翼城县| 承德市| 麦盖提县| 荔浦县| 伊宁市| 铁岭市| 武义县| 滕州市| 吉林市| 鸡东县| 沙河市| 萨嘎县| 潼南县| 珠海市| 阳城县| 河北区| 洮南市| 磐安县| 重庆市| 中牟县| 镇江市|