生物資訊學需要掌握C 嗎?

時間 2021-05-31 12:46:14

1樓:張旭東

學習就像吃雞,一開始哪怕只有平底鍋,也要想辦法拍死他。

然後,邊殺人,邊撿裝備,邊練瞄準,邊總結經驗。

生物資訊也是一樣,一開始,Linux 會基本操作(二十來個命令),程式設計會用 python 寫小程式就行,先開始幹活,沒活就找個文獻重複一遍。

然後,你發現裡面用的統計學方法看不懂,再回頭學習統計;發現 python 寫的程式太慢了,再來學 C++ ;發現幾十萬的樣本用 SVM 效果不好,再來學深度學習。

最後,你會發現,學的越多,越覺得自己什麼都不會,精力不夠用。這個層次的生物資訊工程師就開始分化了,有人專門開發軟體,有人專門挖掘資料,有人專門統計繪圖。就像IT行業,前端、UI、後端、資料庫。。。

2樓:富貴鱉鱉

看課題方向啦

如果是側重於資料分析或者統計建模/機器學習,用python即可。python可做膠水語言,也可做數值計算,做這兩樣時速度不比c++慢,而且開發起來方便很多。

如果開發bwa、bedtools之類的處理序列資料的演算法和工具,還是用c++更合適一些。

3樓:Anonymous

有點驚訝這樣好的問題沒有清華的同學來回答一下......

學生物當然要掌握C++啊,這可是吃飯的本事。

要是我當年報考的是生物系,也許現在我已經是個優秀的C++程式設計師了(手動滑稽)

4樓:張飛

學Python吧,簡單易學,功能強大。很多機器學習,大資料處理,分析,有現成的包。c++,就沒必要了,等你精通c++,你也畢業了,不要買櫝還珠,對你來說這只是工具

5樓:

需要。首先生物資訊學也是計算機相關學科。凡是和程式設計和演算法相關的專業,我覺得C語言是基礎,是必須要學一學的。C語言能教給你的最重要的事情,就是讓你對「計算機計算」這件事情有乙個不錯的了解。

對計算機能做的事情充分掌握。當然這些東西通過學習計算理論、計算機系統結構、演算法導論等課程都能掌握,聽起來也沒有什麼非學C的必要。不過使用C/C++程式設計的時候對這些的親身體會更為重要一些。

如果你自己覺得自己是非計算機的,比如本科是生物或者醫學出身的。演算法和程式不需要了解太深,那麼不學C也是可以的。

相對的,你也只能處在底層的利用別人的工具分析的階段,一旦這些工具中出什麼問題或者想針對自己的需求修改這些工具的結果就很困難了。

再加上資料探勘、機器學習其實離生物資訊學並不是那麼遠。

而且只會C/C++肯定是不行的,選擇方便自己的工具也是很重要的。C/C++也只是工具的一種。在統計分析方面R就很方便。如果想自己做神經網路結構的話,python也很好用。

不過到了實用的方面,你做的東西走向產品化。C++就變得非常重要了。C++經常被使用在需要效率的地方,而生物資訊學不少方面的資料處理的資料量並不小。

我自己就重構過乙個關於DNA資料分析的python->C++的優化,目的就是提高效率,結果是快了約1000倍。現在看到有些人為了繼續提高效率都開始上FPGA了。所以做生物資訊不需要關注效率可能是個偽命題。

當然你說不會C/C++影不影響出研究成果,我覺得基本是不影響的。研究還是點子更重要。

6樓:

c++的應用場景應該是那些非常偏工程的場景,追求高速度啥的。就一般研究而言,R perl python matlab shell使用居多。

7樓:msowb

生物資訊入門的話還是學perl、R比較好。指令碼語言大多會用perl,統計作圖等用R。這兩種用溜了就能解決大多數問題了。

後期想要提公升還可以學一學python之類的。不想著轉計算機的話完全沒必要學C艹。

8樓:陳鋼

先說乙個觀點,凡屬搞計算的,C語言都是應該學學的。沒有一點C語言基礎,很多計算機的基本概念都理解不對。lh3大神的BWA是C寫的:

lh3/bwa 現在流行的FPGA也頂多就抽象到C語言了。

回到樓主說的C++:

計算機背景的,要做演算法和工具開發的,C++還是很重要的。直接用C寫還是太痛苦了。比如,比如 @銳邦

@李英睿 餘昶和李瑞強等人開發的SOAP系列,基本上都是C++寫的。如果要呼叫CUDA一類的東西,C++也少不了。

如果是生物、醫學背景,更多是應用層面的工作,做流程設計和開發,對結果進行分析解釋的,C++的重要性就低很多了,我看很多沒學C++的也做得很好。Python現在是主流了,R也經常用,翻完小駱駝準備點Perl的基礎知識也不錯。絕大部分情況都能搞定了。

統計或者搞機器學習的,就看具體需求了。一般的建模和測試在R、Python裡面也都能搞定了,TensorFlow這類系統也解決了很多問題。hadoop的整個生態也都有Python的介面。

想繼續修行的話,生物資訊這行業涉及的東西太雜了,而且經常要用到別人開發的工具,多學點反正都沒壞處。把握好自己的核心能力就行。

大資料時代下的生物資訊學專業與生物資訊學職業?

生物資訊從大面上至少可以分成,開車的和造輪子的,搞汽車裝修的這幾類。除了開車的,其餘很少能夠接觸T以上的資料。我最近在實驗室做一些分析,我也不知道算不算大資料,反正一周樣本都跑下來,快10個T了。現在測序很便宜,乙個樣本測個幾百G,然後平行幾個樣本的事情以後肯定會越來越多。什麼是真正的生物大資料時代...

請問生物資訊學如何?

熱門研究領域,前沿研究領域的密集區。適合 1.數理化生農計電背景的科技狂人,科技宅 2.數理化生農計電背景的,不喜歡社會,喜歡學校的人3.生化環農本科,想找個相對不那麼坑的方向的人4.本科生化環農想轉cs 資料科學,又被客觀條件制約難以硬轉的人不適合 1.一心想找工作,憧憬社會的人 2.理科差的人,...

生物資訊學 Bioinformatics 和醫學 健康資訊學 Heath Informatics 哪個就業前景好?

狐狸少爺 樓主所說的健康資訊學,在國內應該是醫學資訊學。目前國內醫學資訊學本科專業主要是在醫學院校開設的資訊管理與資訊系統 醫藥方向 大概有40幾所醫學院校都開設此專業。主要課程就是計算機和醫學相關課程,就業目標就是醫院資訊科,醫療軟體公司。隨著移動醫療,醫療大資料,網際網路健康的興起,該專業畢業生...