System.ArgumentOutOfRangeException: 索引和長(zhǎng)度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專利技術(shù)涉及計(jì)算機(jī),特別是涉及基于迭代k-mer分解的基因組組裝方法及系統(tǒng)。
技術(shù)介紹
1、基因組組裝是生物信息學(xué)中的核心任務(wù)之一。基因組組裝是指將通過基因組測(cè)序技術(shù)獲得的大量短序列片段(稱為測(cè)序reads)進(jìn)行拼接,以重建出完整的基因組序列。由于測(cè)序reads僅覆蓋基因組的部分區(qū)域,且可能包含重復(fù)序列和測(cè)序誤差,組裝過程通常需借助算法和圖結(jié)構(gòu)(如德布魯因圖)來識(shí)別重疊關(guān)系,優(yōu)化拼接順序,以準(zhǔn)確還原出原始基因組的完整序列。
2、在現(xiàn)有技術(shù)中,常規(guī)的基于k-mer計(jì)數(shù)的基因組組裝方法存在固定k值的局限性,難以兼顧組裝精度和對(duì)低覆蓋度區(qū)域的識(shí)別能力。為解決固定k值的局限性問題,也有通過從小到大迭代k值的k-mer組裝方法,相較于常規(guī)組裝方法而言其能夠提高組裝精度。然而,通過從小到大迭代k值的k-mer組裝方法存在計(jì)算復(fù)雜度高、處理速度較慢、低頻k-mer利用率低的問題。
技術(shù)實(shí)現(xiàn)思路
1、本專利技術(shù)實(shí)施例提供的基于迭代k-mer分解的基因組組裝方法及系統(tǒng),至少解決現(xiàn)有基因組組裝方法的計(jì)算復(fù)雜度高、組裝質(zhì)量低和組裝速度慢的問題,通過由大到小逐步迭代序列長(zhǎng)度并對(duì)序列片段集合進(jìn)行分解,在每輪迭代中分別處理高頻集合和低頻集合,有效降低了計(jì)算負(fù)擔(dān)、提高了組裝速度和組裝質(zhì)量。
2、第一方面,本專利技術(shù)提供了一種基于迭代k-mer分解的基因組組裝方法,包括根據(jù)序列長(zhǎng)度處理序列片段集合,得到頻數(shù)集合;其中,首個(gè)所述序列長(zhǎng)度為輸入的所述序列片段集合的最大序列長(zhǎng)度;根據(jù)預(yù)設(shè)頻數(shù)閾
3、在本專利技術(shù)的一個(gè)實(shí)施例中,根據(jù)序列長(zhǎng)度處理序列片段集合,得到頻數(shù)集合,包括:根據(jù)所述序列長(zhǎng)度,提取所述序列片段集合中的每個(gè)序列片段,得到每個(gè)所述序列片段所對(duì)應(yīng)的連續(xù)核苷酸序列和連續(xù)核苷酸序列個(gè)數(shù);建立所述連續(xù)核苷酸序列和所述連續(xù)核苷酸序列個(gè)數(shù)之間的映射關(guān)系,得到所述頻數(shù)集合。
4、在本專利技術(shù)的一個(gè)實(shí)施例中,根據(jù)預(yù)設(shè)頻數(shù)閾值,劃分所述頻數(shù)集合,得到高頻集合和低頻集合,包括:比較所述預(yù)設(shè)頻數(shù)閾值,以及所述頻數(shù)集合中的每個(gè)連續(xù)核苷酸序列個(gè)數(shù)的大小;若所述預(yù)設(shè)頻數(shù)閾值小于所述連續(xù)核苷酸序列個(gè)數(shù),則確認(rèn)相應(yīng)的連續(xù)核苷酸序列屬于所述高頻集合;若所述預(yù)設(shè)頻數(shù)閾值不小于所述連續(xù)核苷酸序列個(gè)數(shù),則確認(rèn)相應(yīng)的連續(xù)核苷酸序列屬于所述低頻集合。
5、在本專利技術(shù)的一個(gè)實(shí)施例中,根據(jù)得到的多個(gè)所述高頻集合構(gòu)建德布魯因圖,包括:從多個(gè)所述高頻集合中,選取一個(gè)未處理過的所述高頻集合作為待修補(bǔ)集合;獲取所述待修補(bǔ)集合所對(duì)應(yīng)的當(dāng)前序列長(zhǎng)度;判斷所述當(dāng)前序列長(zhǎng)度和所述最大序列長(zhǎng)度的大小;若所述當(dāng)前序列長(zhǎng)度等于所述最大序列長(zhǎng)度,則確認(rèn)當(dāng)前的所述待修補(bǔ)集合為初始修補(bǔ)集合,并轉(zhuǎn)至從多個(gè)所述高頻集合中,選取一個(gè)未處理過的所述高頻集合作為待修補(bǔ)集合;若所述當(dāng)前序列長(zhǎng)度小于所述最大序列長(zhǎng)度,則處理當(dāng)前的所述待修補(bǔ)集合,得到修補(bǔ)集合,并轉(zhuǎn)至從多個(gè)所述高頻集合中,選取一個(gè)未處理過的所述高頻集合作為待修補(bǔ)集合;其中,所述修補(bǔ)集合的序列長(zhǎng)度與所述最大序列長(zhǎng)度相等;將所述初始修補(bǔ)集合和所述修補(bǔ)集合進(jìn)行合并,得到修補(bǔ)高頻集合;根據(jù)所述修補(bǔ)高頻集合構(gòu)建所述德布魯因圖。
6、在本專利技術(shù)的一個(gè)實(shí)施例中,處理當(dāng)前的所述待修補(bǔ)集合,得到修補(bǔ)集合,包括:獲取所述待修補(bǔ)集合中,每個(gè)連續(xù)核苷酸序列和連續(xù)核苷酸序列個(gè)數(shù)之間的映射關(guān)系;根據(jù)所述映射關(guān)系處理連續(xù)核苷酸序列,得到還原序列片段;根據(jù)所述最大序列長(zhǎng)度,提取每個(gè)所述還原序列片段,得到所述修補(bǔ)集合。
7、在本專利技術(shù)的一個(gè)實(shí)施例中,根據(jù)所述德布魯因圖輸出組裝序列集合,包括:將所述德布魯因圖進(jìn)行優(yōu)化操作,得到優(yōu)化德布魯因圖;將所述優(yōu)化德布魯因圖進(jìn)行遍歷操作,輸出所述組裝序列集合。
8、在本專利技術(shù)的一個(gè)實(shí)施例中,所述優(yōu)化操作包括合并重復(fù)路徑、合并氣泡結(jié)構(gòu)和剔除小分支中的至少一項(xiàng)。
9、第二方面,本專利技術(shù)還提供一種基于迭代k-mer分解的基因組組裝系統(tǒng),包括處理模塊、劃分模塊、迭代分解模塊、組裝模塊;所述處理模塊用于根據(jù)序列長(zhǎng)度處理序列片段集合,得到頻數(shù)集合;其中,首個(gè)所述序列長(zhǎng)度為輸入的所述序列片段集合的最大序列長(zhǎng)度;所述劃分模塊用于根據(jù)預(yù)設(shè)頻數(shù)閾值,劃分所述頻數(shù)集合,得到高頻集合和低頻集合;所述迭代分解模塊用于判斷預(yù)設(shè)長(zhǎng)度閾值和所述序列長(zhǎng)度的大小;其中,在所述預(yù)設(shè)長(zhǎng)度閾值不大于所述序列長(zhǎng)度時(shí),所述迭代分解模塊將所述低頻集合作為新的所述序列片段集合,對(duì)所述序列長(zhǎng)度進(jìn)行減值操作,并將新的所述序列片段集合、以及根據(jù)減值操作得到的所述序列長(zhǎng)度傳輸給所述處理模塊;在所述預(yù)設(shè)長(zhǎng)度閾值大于所述序列長(zhǎng)度時(shí),所述迭代分解模塊將得到的多個(gè)所述高頻集合傳輸給所述組裝模塊;所述組裝模塊用于根據(jù)得到的多個(gè)所述高頻集合構(gòu)建德布魯因圖,并根據(jù)所述德布魯因圖輸出組裝序列集合。
10、第三方面,本專利技術(shù)還提供一種電子設(shè)備,包括:處理器,以及存儲(chǔ)程序的存儲(chǔ)器,述程序包括指令,所述指令在由所述處理器執(zhí)行時(shí)使所述處理器執(zhí)行如上述任意一項(xiàng)所述的基于迭代k-mer分解的基因組組裝方法。
11、第四方面,本專利技術(shù)還提供一種存儲(chǔ)有計(jì)算機(jī)指令的非瞬時(shí)機(jī)器可讀介質(zhì)所述計(jì)算機(jī)指令用于使所述計(jì)算機(jī)執(zhí)行如上述任意一項(xiàng)所述的基于迭代k-mer分解的基因組組裝方法。
12、本專利技術(shù)的上述技術(shù)方案相比現(xiàn)有技術(shù)具有以下有益效果:
13、本專利技術(shù)所述的基于迭代k-mer分解的基因組組裝方法及系統(tǒng),自輸入的序列片段集合的最大序列長(zhǎng)度起,對(duì)序列長(zhǎng)度由大到小進(jìn)行逐步減小,并使用相應(yīng)的序列長(zhǎng)度處理序列片段集合,得到頻數(shù)集合及相應(yīng)的高頻集合和低頻集合。通過由大到小的處理方式,能夠在逐步縮減數(shù)據(jù)集規(guī)模的同時(shí)加快計(jì)算速度,實(shí)現(xiàn)對(duì)大規(guī)模基因組數(shù)據(jù)的高效組裝,以有效提高組裝速度。
14、隨后,高頻集合作為可靠集合,將其保留并用于后續(xù)構(gòu)建德布魯因圖及組裝序列;而低頻集合作為不可靠集合,用將其用于下一輪的迭代處理。首先,由于每次迭代中只對(duì)不可靠集合進(jìn)行分解處理,能夠使每輪的數(shù)據(jù)量顯著減少,從而通過降低數(shù)據(jù)規(guī)模來提升計(jì)算效率、降低計(jì)算負(fù)擔(dān)。其次,由于低頻集合不會(huì)和現(xiàn)有技術(shù)的方法一樣直接丟棄,而是用于下一輪的迭代處理、實(shí)現(xiàn)拆分,因此原本易被忽視的低頻集合得以保留和利用,不僅提高了數(shù)據(jù)利用率,還進(jìn)一步提升了最終的組裝質(zhì)量。最后,能夠根據(jù)得到的多個(gè)高頻集合構(gòu)建德布魯因圖,有效防止構(gòu)建德布魯因圖遍歷路徑斷裂的問題,使得最終輸出組裝序列集合更長(zhǎng),組裝效果更優(yōu)秀。
本文檔來自技高網(wǎng)...【技術(shù)保護(hù)點(diǎn)】
1.一種基于迭代k-mer分解的基因組組裝方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的基于迭代k-mer分解的基因組組裝方法,其特征在于,根據(jù)序列長(zhǎng)度處理序列片段集合,得到頻數(shù)集合,包括:
3.根據(jù)權(quán)利要求1所述的基于迭代k-mer分解的基因組組裝方法,其特征在于,根據(jù)預(yù)設(shè)頻數(shù)閾值,劃分所述頻數(shù)集合,得到高頻集合和低頻集合,包括:
4.根據(jù)權(quán)利要求1所述的基于迭代k-mer分解的基因組組裝方法,其特征在于,根據(jù)得到的多個(gè)所述高頻集合構(gòu)建德布魯因圖,包括:
5.根據(jù)權(quán)利要求4所述的基于迭代k-mer分解的基因組組裝方法,其特征在于,處理當(dāng)前的所述待修補(bǔ)集合,得到修補(bǔ)集合,包括:
6.根據(jù)權(quán)利要求1所述的基于迭代k-mer分解的基因組組裝方法,其特征在于,根據(jù)所述德布魯因圖輸出組裝序列集合,包括:
7.根據(jù)權(quán)利要求6所述的基于迭代k-mer分解的基因組組裝方法,其特征在于:
8.一種基于迭代k-mer分解的基因組組裝系統(tǒng),其特征在于,包括:處理模塊、劃分模塊、迭代分解模塊、組裝模塊;
10.一種存儲(chǔ)有計(jì)算機(jī)指令的非瞬時(shí)機(jī)器可讀介質(zhì),其特征在于,所述計(jì)算機(jī)指令用于使所述計(jì)算機(jī)執(zhí)行根據(jù)權(quán)利要求1至7中任一項(xiàng)所述的基于迭代k-mer分解的基因組組裝方法。
...【技術(shù)特征摘要】
1.一種基于迭代k-mer分解的基因組組裝方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的基于迭代k-mer分解的基因組組裝方法,其特征在于,根據(jù)序列長(zhǎng)度處理序列片段集合,得到頻數(shù)集合,包括:
3.根據(jù)權(quán)利要求1所述的基于迭代k-mer分解的基因組組裝方法,其特征在于,根據(jù)預(yù)設(shè)頻數(shù)閾值,劃分所述頻數(shù)集合,得到高頻集合和低頻集合,包括:
4.根據(jù)權(quán)利要求1所述的基于迭代k-mer分解的基因組組裝方法,其特征在于,根據(jù)得到的多個(gè)所述高頻集合構(gòu)建德布魯因圖,包括:
5.根據(jù)權(quán)利要求4所述的基于迭代k-mer分解的基因組組裝方法,其特征在于,處理當(dāng)前的所述待修補(bǔ)集合,得到修補(bǔ)集合,包括:
6.根據(jù)權(quán)利要求1所述的基于迭代k-m...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:祝坤,孫玉娥,杜揚(yáng),黃河,
申請(qǐng)(專利權(quán))人:蘇州大學(xué),
類型:發(fā)明
國(guó)別省市:
還沒有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。