Ⅰ 如何系統的學習生物信息學
生物信息學,是一門綜合學科。涉及到數學,生物學和計算機的內容。但在我看來,計算機的基礎需要,但要求不是很高,關鍵是要有很好的生物學知識,包括遺傳學的、生物化學的、發育生物學的、分子生物學的、植物生理學的知識等等,也就說需要達到這樣的一個要求:在進行數據分析時,能對各種分析結果進行生物學的評價,並給出最優的分析策略。同時也應該有純熟的數理基礎,包括統計學的、拓撲學的,這樣才能把待分析的問題轉換成可計算的模型,最後能給出實現的程序。
從個人來說,因為生物信息學是一個非常大的領域,所以,關鍵是要確定自己的研究方向。比如,以關聯分析為方向的生物信息學,那麼就要掌握好各種關聯分析的統計分析方法,有很強的數據管理能力,足夠好的序列分析能力(這是進行variation查找和分析的基礎)。
回到6年以前,如果決定在生物信息學上發展,那麼我也許會做下面這些事情:
首先,從最不重要的計算機這個方面來說:
(1)要掌握好bash等腳本語言,一般的linux問題都能很好的解決
(2)熟練使用apache,mysql等基礎軟體工具,用joomla等CMS配置搭建網站
(3)應該努力精通perl,bioperl,以基於此的各種分析工具,比如gbrowser,cmap等
(4)足夠好的c/c++語言能力,這是實現新演算法的最高效語言。
(5)應該努力精通R語言,這是進行統計分析的基礎工具
(6)如果有機會,學學erlang這樣一些函數式語言吧
其次,從數學基礎來說,我覺得應該:
(1)學好線性代數
(2)學好高等數學,或者數學分析
(3)學好統計學
(4)學好離散數學
(5)學好計算機演算法和數據結構
其次,從生物學來說:
(1)如果沒有進化論的基層,請把進化論學好
(2)學好發育生物學,植物生理學
(3)學好基因組學、遺傳學等
千萬不要認為這些沒有什麼用,當你在數據分析,怎麼判斷結果的合理性,或者對結果進行解釋時候,都離不開這些生物學問題。最後,你對這些問題的理解成度,決定了你的生物信息學水平:只是一個有生物學知識的、會進行計算機操作的技術員,還是一個能給出解決方案的有良好計算機基礎的能把握生物學問題的生物信息學家。
最後,從生物信息學的角度來說:
(1)對NCBI等各大資料庫非常熟悉
(2)對各種生物學信息學的分析方法和策略非常的清楚,至少應該知道有那些工具軟體,以及這些工具軟體的原理和基於的生物學基礎,包括:基因組學分析,表達譜分析,代謝組分析、調控網路分析、數據結果的整合展示等
最後,生物信息學是一個發展很快的學科,但因起涉及的內容比較多,因此,要想到底一定的要求,是需要付出巨大的努力的。此外,在進行生物信息學學習的過程中,對自己感興趣的方法工具,一定要把文獻上的數據拿來,自己獨立分析一遍,自己去體會分析的過程,從而對這些方法和工具有更深入的理解。
Ⅱ 處理生物信息學上的問題用perl好呢還是Python好呢糾結要學哪個
python好,網上了解很多學生物信息的就是用python