另一種blast2go的思路

2021-07-09 06:15:59 字數 642 閱讀 4261

blast2go是用序列相似性得到go的資訊,而網上很多軟體要麼針對某個蛋白的,要麼就是只能網上執行的,還有就是只有windows的,煩- -

但如果用名字對應會怎麼樣,嘗試了一番記錄如下:

我們的序列先進行blast nr庫得到的是比對的蛋白序列,名字有gi號和refseq號;

ncbi ftp裡面有個gene2go的檔案,發現是geneid對應go號;

又從ftp裡面發現了gene2refseq檔案,是geneid對應gi號;

好了,由此我們可以把這三者進行了串聯,結果發現了350多條對應關係,而blast2go的結果有303,\(^o^)/~!

但是我將兩者取了交集之後,發現只有5個!只有5個!只有5個!!!瞬間伐開心。。。

所以我在想是不是有幾種情況要考慮:

首先是過濾,我們blast的引數都是設定好的,當然可以過濾一部分,程式裡面取的是在資料庫裡面有的且最好的,但blast2go肯定做了另一種過濾;

其次是資料庫,blast2go可能取了不僅僅是ncbi裡面的gene2go,還有其他的,還沒搞明白;

最後是程式,是不是blast2go用了層次關聯排除了一部分,挖出了一部分,我簡直是醉了!!!

還有就是2023年了,做個小總結,雖然有幾個月沒更新(心煩的事情),但最終暫時解決了,明年會怎樣?

選擇排序的另一種思路

在我們上次的選擇迴圈中,我們用了乙個minindex變數來儲存最小值的下標,每次迴圈完畢後用最小值下標的元素與手元素進行交換,遍歷一次,記錄下最值元素所在位置,遍歷結束後,將此最值元素調整到合適的位置。但是我們還有種交換變數的方式,我們可以用待排序陣列中的元素與待排序序列中的首元素比較,如果比待排序...

詳解KMP演算法 另一種思路

這個演算法單純從 理解起來比較費勁.我覺得從思路上理解是非常簡單的.傳統演算法的劣勢很容易察覺.那就是會有重複的匹配過程.我們假定 text為待查文字,pattern 為匹配串.text aaaab pattern ab 按以下傳統演算法.則直到迴圈到最後一次比較.才找到 ab 而前面很多迴圈都是做...

全域性變數的另一種思路

為了程式的可讀性和邏輯性,有時候喜歡用單獨的.h檔案定義所有的全域性變數。有時候我們會想,在grobalpar.h中定義所有的全域性變數,然後其他cpp檔案 include grobalpar.h 就ok了,這種想法大錯特錯!這樣做會出現重複定義的錯誤 提示很多很多變數都重複定義 如下 注意 1 只...