版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1切花百合病毒種類高通量鑒定和檢測技術(shù)規(guī)程本文件規(guī)定了切花百合病毒種類高通量鑒定和檢測的術(shù)語和定義、樣品采集與處理、切花百合病毒種類高通量鑒定和檢測方法以及結(jié)果判定的技術(shù)要求。本文件適用于已報道的切花百合病毒種類的鑒定。2規(guī)范性引用文件下列文件中的內(nèi)容通過文中的規(guī)范性引用而構(gòu)成本文件必不可少的條款。其中,注日期的引用文件,僅該日期對應(yīng)的版本適用于本文件;不注日期的引用文件,其最新版本(包括所有的修改單)適用于本文件。GB/T28071黃瓜綠斑駁花葉病毒檢疫鑒定方法GB/T30989高通量基因測序技術(shù)規(guī)程GB/T35537高通量基因測序結(jié)果評價要求GB/T35890高通量測序數(shù)據(jù)序列格式規(guī)范GB/T40664用于高通量測序的核酸類樣本質(zhì)量控制通用要求NY/T402脫毒甘薯種薯(苗)病毒檢測技術(shù)規(guī)程NY/T1744切花百合脫毒種球3術(shù)語和定義GB/T30989—2014、GB/T35890—2018、GB/T40664—2021及NY/T1744—2009界定的以及下列術(shù)語和定義適用于本文件。為了便于使用,以下重復(fù)列出了GB/T30989—2014、GB/T35890—2018、GB/T40664—2021及NY/T1744—2009中的某些術(shù)語和定義。3.1切花百合病毒病cutlilyvirusdiseases指由單一或復(fù)合病毒侵染百合植株造成植株矮化、花朵變小;葉片花葉、褪綠、斑駁、規(guī)則或不規(guī)則壞死斑、畸形等疑似病毒為害癥狀的病害。[來源:NY/T1744—2009,4.23,有修改]3.2高通量測序high-throughputsequencing又稱“下一代測序技術(shù)”(Next-generationsequencingtechnology),區(qū)別于傳統(tǒng)雙脫氧測序,是指一種能夠一次并行對大量核酸分子進(jìn)行平行序列測定的技術(shù),通常一次測序反應(yīng)能產(chǎn)生不低于100Mb的測序數(shù)據(jù)。[來源:GB/T30989—2014,7.24,有修改]3.3測序片段reads2高通量測序平臺產(chǎn)生的含有堿基序列和質(zhì)量值的序列片段。[來源:GB/T35890—2018,2.6]3.4轉(zhuǎn)錄組高通量測序transcriptomehigh-throughputsequencing基于高通量平臺,針對細(xì)胞內(nèi)某一功能狀態(tài)下所能轉(zhuǎn)錄出來的所有RNA(主要包括mRNA和非編碼RNA進(jìn)行平行序列測定的技術(shù),通常一次測序反應(yīng)能產(chǎn)生不低于100Mb的測序數(shù)據(jù)。3.5過濾片段cleanreads指高通量測序reads序列過濾后的測序片段。3.6測序通量throughputofgenesequencing單次測序可獲得序列信息的基因片段數(shù)量或可測定的脫氧核糖核酸(以堿基表示)數(shù)量。[來源:GB/T30989—2014,7.24]3.7核苷酸nucleotide構(gòu)成核酸的基本單位,由五碳糖、磷酸和環(huán)狀的含氮堿基三部分組成。[來源:GB/T30989—2014,7.24]3.8測序讀長readlengthofgenesequencing測序能測的最長基因片段,通常以堿基數(shù)表示。[來源:GB/T30989—2014,7.24]3.9堿基識別質(zhì)量qualityofbasecalling衡量堿基正確識別的概率,通常以數(shù)字值表示。Q表示堿基識別質(zhì)量,Q20表示測序質(zhì)量值大于20的堿基占總堿基的百分比,Q30表示測序質(zhì)量值大于30的堿基占總堿基的百分比。[來源:GB/T30989—2014,7.24]3.10RNA完整值(RIN)RNAintegritynumber(RIN)反映RNA完整性的數(shù)值。[來源:GB/T40664—2021,10.11]3.11接頭adapter為一段已知的短核苷酸序列,用于鏈接未知的目標(biāo)測序片段。33.12FASTQ格式FASTQformatFASTQ是基于文本的、保存生物序列(通常是核酸序列)和其測序質(zhì)量信息的、每四行表示一條序列的標(biāo)準(zhǔn)格式。[來源:GB/T35890—2018,2.6,有修改]3.13核酸序列對蛋白質(zhì)序列庫比對BLASTX自動將輸入的核苷酸序列翻譯為氨基酸序列后(根據(jù)可能的讀碼框和編碼鏈的差別,一段核苷酸序列可能翻譯為六種氨基酸序列),比對數(shù)據(jù)庫中的蛋白質(zhì)序列。3.14植物病毒分離物數(shù)據(jù)庫databaseofplantvirusisolates已公布的所有植物病毒分離物序列合集。4樣品采集與處理4.1儀器與試劑耗材4.1.1設(shè)備-20℃冰箱,高壓滅菌鍋,感量為0.01g的電子天平。4.1.2器具一次性手套,一次性采樣袋,研缽和研杵,1.5mL或2.0mL離心管,高壓滅菌的打孔器(直徑1cm)。4.1.3試劑75%乙醇,液氮,三氯甲烷,異丙醇。4.2取品采集4.2.1采樣要求將采集的百合種球或疑似病毒病的百合葉片放入有編號的自封袋中,宜4℃條件下運輸?shù)綄嶒炇?。采樣過程中,應(yīng)佩戴一次性手套,每采一個樣品更換一次手套,并用75%乙醇消毒采樣工具。4.2.2百合脫毒種球取樣百合脫毒種球抽樣方法執(zhí)行NY/T1744中5.3.1的規(guī)定,抽樣數(shù)量執(zhí)行NY/T402中4.2.1的規(guī)定。4.2.3切花生產(chǎn)用脫毒種球的取樣切花生產(chǎn)用脫毒種球抽樣方法執(zhí)行NY/T1744中5.3.1的規(guī)定,抽樣數(shù)量執(zhí)行NY/T402中4.2.1的規(guī)4.2.4百合葉片的取樣4切花百合的前、中和后期生長過程中,在目測大棚的基礎(chǔ)上,采用五點取樣法,每點采集疑似病毒病癥狀植株4株,分別采集每株中、上部葉,每個部位采集葉片2片。4.3樣品處理4.3.1取樣時限冷藏運輸回實驗室的樣品應(yīng)在24h內(nèi)完成取樣及后續(xù)樣品處理。4.3.2百合種球樣品處理選擇未見明顯污漬的種球外層鱗片,每個樣品稱取0.2g,每10個樣品混成一個檢測樣,用液氮將檢測樣研磨成粉末,將粉末裝至離心管,液氮速凍,-20℃保存?zhèn)溆谩?.3.3百合葉片樣品處理用打孔器在采集葉片的中部打孔,每個樣品稱取0.2g,每10個樣品混合成一個檢測樣,用液氮將檢測樣研磨成粉末,將粉末裝至離心管,液氮速凍,-20℃保存?zhèn)溆谩?切花百合病毒種類高通量鑒定和檢測方法5.1已報道的切花百合病毒病種類及癥狀已報道的切花百合病毒種類及癥狀,參見資料性附錄A。5.2轉(zhuǎn)錄組高通量測序5.2.1RNA提取與檢測百合組織總RNA提取稱取0.1g植物組織加液氮研磨成粉末狀,迅速將其移入滅菌的1.5mL或2.0mL離心管中,加入1mL的Trizol試劑,劇烈振蕩搖勻后室溫保持5min;4℃,12000g離心10min,取上清液,加入0.2mL三氯甲烷并劇烈振蕩混勻;4℃,12000g離心10min,取上清液,加0.6倍體積的異丙醇,顛倒混勻,室溫保持5min;4℃,12000g離心10min,棄上清液,加75%的乙醇洗滌沉淀,4℃,7500g離心2min,棄乙醇;沉淀于室溫充分干燥后,溶于30μL去離子水(DEPC處理),-20℃保存?zhèn)溆谩R部刹捎玫刃У脑噭┖刑崛】俁NA。百合組織總RNA質(zhì)量要求RNA總量大于1μg;RNA完整值(RIN)大于5.8;RNA純度要求為OD260/280=1.8~2.0,OD260/2305.2.2文庫構(gòu)建和質(zhì)檢文庫構(gòu)建文庫通過Oligo(dT)磁珠富集帶有polyA尾的mRNA。質(zhì)量要求5PCR產(chǎn)物產(chǎn)量≥200ng;PCR產(chǎn)物片段大小為主帶(210-250)bp,條帶分布(150-500)bp;文庫有效濃度高于8ng。5.2.3數(shù)據(jù)處理與質(zhì)控數(shù)據(jù)處理去除帶接頭(adapter)的reads、去除含N(N表示無法確定堿基信息)的reads、去除低質(zhì)量reads。同時對cleandata進(jìn)行Q20、Q30和GC含量計算。后續(xù)所有分析均是基于cleandata進(jìn)行的高質(zhì)量分析。數(shù)據(jù)質(zhì)控數(shù)據(jù)質(zhì)控須符合以下要求:a)單個堿基位置的測序錯誤率應(yīng)低于1%,最高不超過6%;b)Q20>90%;Q30>90%;c)測序通量>6Gb。5.2.4轉(zhuǎn)錄組拼接及參數(shù)設(shè)置轉(zhuǎn)錄組拼接高通量測序cleandata利用Trinity軟件進(jìn)行拼接。拼接參數(shù)min_kmer_cov設(shè)置為2,其他參數(shù)設(shè)置為默認(rèn)值。測序數(shù)據(jù)序列輸入、輸出按GB/T35890規(guī)范執(zhí)行。具體方法見附錄B。5.3序列分析及結(jié)果導(dǎo)出5.3.1序列分析參數(shù)BlastX參數(shù):blastx-queryreferences.fa-outresults.xls-dbnr-evalue2e-5-outfmt6-max_taget_seqs1;references使用已公布的植物病毒分離物蛋白質(zhì)數(shù)據(jù)庫。5.3.2序列分析及結(jié)果導(dǎo)出平臺園藝作物病毒快速檢測與新病毒監(jiān)測平臺/s/dnb/diamond/cmpr/49。具體方法及代碼見附錄C。VirusDetect/tool/VirusDetect/。具體方法見附錄D。6結(jié)果判定對高通量數(shù)據(jù)生物信息學(xué)分析結(jié)果進(jìn)行判定,當(dāng)“期望”值(E-Value)為“0”時,判定該樣品存在病毒,“命中名稱”為所鑒定病毒;當(dāng)“期望”值(E-Value)無“0”結(jié)果時,判定該樣品未發(fā)現(xiàn)已報道的切花百合病毒。6(資料性)已報道的切花百合病毒種類和癥狀A(yù).1已報道的切花百合病毒種類查詢和統(tǒng)計了侵染切花百合的病毒種類,共有39種病毒侵染切花百合,38種為RNA病毒,1種為DNA病毒(表A.1)。表A.1侵染切花百合病毒種類科屬1AlphaflexiviridaePotexvirus2NMVAlphaflexiviridaePotexvirus3PlantagoasiaticamosaicAlphaflexiviridaePotexvirus4AlphaflexiviridaePotexvirus5Betaflexiviridae6Betaflexiviridae7amazonlilymildmottBromoviridaeAnulavirus8Bromoviridae9PrunusnecroticringspotBromoviridaeIlarvirusmilkvetchdwarfvirusNanoviridaeNanovirusPotyviridaePotyvirusPotyviridaePotyvirusPotyviridaePotyvirusPotyviridaePotyvirusPotyviridaePotyvirusPotyviridaePotyvirusPotyviridaePotyvirusPotyviridaePotyvirusPotyviridaePotyvirusrembrandttulip-breakinPotyviridaePotyvirusPotyviridaePotyvirusThunbergfritillarymosaiPotyviridaePotyvirusPotyviridaePotyvirusPotyviridaePotyvirusbroadbeanwiltvirusSecoviridaeFabavirusSecoviridaeNepovirusCycasnecroticstunSecoviridaeNepovirusSecoviridaeNepovirusSecoviridaeNepovirus7表A.1(續(xù))科屬Secoviridae/TombusviridaeAlphacarmovirusTombusviridaeAlphacarmovirusTospoviridaeOrthotospovirusTospoviridaeOrthotospovirusTospoviridaeOrthotospovirusTospoviridaeOrthotospovirusringspotorthotospoTospoviridae/VirgaviridaeTobravirus//A.2切花百合病毒病癥狀單一或復(fù)合病毒侵染百合植株后會造成葉片壞死、花葉、褪綠、斑駁和植株畸形等癥狀,圖A.1給出了常見的6類百合病毒病癥狀。圖A.1常見的6類百合病毒病癥狀8(規(guī)范性)轉(zhuǎn)錄組高通量測序分析平臺鑒定百合病毒方法B.1轉(zhuǎn)錄組拼接B.1.1高通量測序要求高通量測序讀長≥PE150(雙向測序讀長150bp測序深度≥6G。B.1.2Trinity參數(shù)20G-min_kmer_cov2。B.1.3Trinity參數(shù)說明Trinity參數(shù)說明如下:a)數(shù)據(jù)通過Trinity軟件的無參轉(zhuǎn)錄組分析方法進(jìn)行單獨拼接,拼接參數(shù)選擇“2”;b)-seqType:支持輸入數(shù)據(jù)格式為fq或者fa(圖B.1);c)-max_memory:內(nèi)存設(shè)置20G;d)-left-right:如果是雙端測序,-left為read1,-right為read2;e)-CPU:軟件所用線程6;-min_kmer_cov2;f)最小k-mer覆蓋值,設(shè)置為2去除低豐度數(shù)據(jù)。圖B.1轉(zhuǎn)錄組無參拼接獲得拼接文件9(資料性)園藝作物病毒快速檢測與新病毒監(jiān)測平臺C.1分析平臺的使用輸入網(wǎng)址/s/dnb/diamond/cmpr/49,進(jìn)入網(wǎng)站(圖C.1);點擊“選擇文件”上傳高通量測序數(shù)據(jù)cluster_all.fasta或unigene.fasta(圖C.1);點擊確定,直至頁面顯示比對結(jié)果(圖C.2);點擊右上角“下載比對結(jié)果為Excel表格”,導(dǎo)出分析結(jié)果(圖C.3,圖C.4)。圖C.1基于植物病毒分離物庫的BlastX分析界面圖C.2BlastX分析結(jié)果圖C.3切花百合高通量分析具有病毒的Excel格式文件圖C.4切花百合高通量分析無病毒的Excel格式文件C.2高通量測序分析結(jié)果判讀打開Excel表格(圖C.3,圖C.4第一行為分析結(jié)果參數(shù)。“查詢”表示cluster_all.fasta或unigene.fasta輸入序列編號;“序列”欄為高通量拼接序列;“命中”欄為比對植物病毒分離物庫中同源性較高序列的登錄號;“命中名稱”欄為同源性較高的序列對應(yīng)的病毒名稱(圖C.3)。單擊期望列,點擊按“升序”排序,勾選“擴(kuò)展選定區(qū)域”(圖C.3,圖C.4)。期望值(E-Value)為“0”序列,則判讀為具有該病毒;“序列”欄為鑒定檢測樣品病毒序列,“命中名稱”為鑒定病毒名,“%一致性”為鑒定檢測到的病毒與“命中”病毒序列氨基酸同源性數(shù)值;如果生物信息分析表中未出現(xiàn)期望值為“0”序列,則判讀為該鑒定、檢測樣品無病毒(圖C.4)。C.3網(wǎng)絡(luò)平臺代碼/*第一步:建庫diamondmakedb--inICTV_pep.fa-dpep結(jié)果:得到了pep.dmnd庫文件。第二步:鉆石比對diamondblastx-dpep-qICTV.fa-omatches.m8diamondblastx-dpep-qICTV.fa-e2e-5-k1-f6-oout.tsvclassDiamondControllerextendsAppController{var$models=array('SqBase'=>array('dbconfig'=>'localhost','database'=>DNSP_PREFIX,'tablename'=>'dna_seq_bases'),'CmprHis'=>array('dbconfig'=>'localhost','database'=>DNSP_PREFIX,'tablename'=>'dna_seq_cmpr_his'),'SeqInfo'=>array('dbconfig'=>'localhost','database'=>DNSP_PREFIX,'tablename'=>'dna_seq_bs_seqinfos'),);var$components=array('Tools','ZipFaUtil','MultipleFileRearray','SeqUtil');//,'CharSplitor'functionbeforeAction(){if(!defined('SEQ_BASE_ROOT_DIR')){echo'請管理員定義SEQ_BASE_ROOT_DIR后才能運行';die();}$this->dw='t';//單位名稱,留待擴(kuò)展if(empty($this->user)){//$this->MoUtil->wrapRspFail('還沒有登錄');$this->flashapp('您還沒有登錄,請登錄','/cp/users/login/');$this->_die();}}functionindex($page=1){$dw=$this->dw;$user='na';if(!empty($this->user)){$user=$this->user['username'];}$cnd2=array('dw'=>$dw);$altype='diamond';$cnd2="WHEREdanwei='$dw'AND(user='public'ORuser='$user')ANDaltype='$altype'ANDstatus=100";$kuds=$this->SqBase->where($cnd2)->order(array('id'=>'DESC'))->limit(100)->get();$num=count($kuds);for($i=0;$i<$num;$i++){$st=$kuds[$i]['status'];$kuds[$i]['statstr']=($st==100?'就緒':($st==44?'失敗':'處理中:'.$st));$error='';$fileok=$this->_check_dir_and_fp($kuds[$i],$error);$kuds[$i]['fileok']=($fileok?'ok':'not');}#if(empty($kuds)){$this->flash('請先創(chuàng)建蛋白參考庫','/ku/index/');return;}$this->flush('鉆石比對',array('kuds'=>$kuds));}function_write_ku_file_not($kud){if(empty($kud['kufilenot'])){//首次檢測到庫文件丟失的時間(此字段為空時才可以寫,此字段不為空時,就不要寫入此字段了)$nowstr=date('Y-m-dH:i:s');$this->SqBase->update(array('kufilenot'=>$nowstr),array('id'=>$kud['id']));}}function_get_ku_dir($kud){if($kud['cktype']=='dir'){return$kud['kupath'];$root=SEQ_BASE_ROOT_DIR;//必須配置$dnhint=$this->city['dnhint'];$relpath=$dnhint.'/'.$kud['danwei'].'/'.$kud['user'].'/'.$kud['name'].'/';return$root.''.$relpath;}}function_get_ku_name($kud){return($kud['cktype']=='dir')?$kud['kutitle']:$kud['name'];}function_check_dir_and_fp($kud,&$error){//檢測庫目錄及庫文件是否還在$dir=$this->_get_ku_dir($kud);if(empty($dir)||!file_exists($dir)||!is_dir($dir)){$error='庫目錄丟失';$this->_write_ku_file_not($kud);returnfalse;}//如果是diamond庫,檢查目錄下是否有*.dmnd文件if($kud['altype']=='diamond'){$relpath=$this->_get_ku_name($kud).'.dmnd';$fp=$dir.$relpath;if(!file_exists($fp)||!is_file($fp)){$error='庫文件丟失:'.$relpath;$this->_write_ku_file_not($kud);returnfalse;}//如果是ncbi庫,檢查目錄下是否有*.nsq文件$relpath=$this->_get_ku_name($kud).'.nsq';$fp=$dir.$relpath;if(!file_exists($fp)||!is_file($fp)){$error='庫文件丟失:'.$relpath;$this->_write_ku_file_not($kud);returnfalse;}}$nowstr=date('Y-m-dH:i:s');//最后一次檢測到庫文件還存在的時間(每次檢測到文件還存在時,都要更新此時間)$this->SqBase->update(array('kufileok'=>$nowstr),array('id'=>$kud['id']));returntrue;}functioncmpr($id=0){$kud=$this->SqBase->read($id);if(empty($kud)){$this->redirect('index/');return;}$cmprhis=array();$form=$this->form;if(empty($form)){//$cnd1=array();//$cmprhis=$this->CmprHis->where($cnd1)->order(array('id'=>'DESC'))->limit(10)->get();$this->flush('鉆石比對',array('kud'=>$kud,'cmprhis'=>$cmprhis));return;}//var_export($form);return;//debug$this->_exe_cmpr($kud,$form);}function_exe_cmpr($kud,$form){set_time_limit(0);$seq=strtoupper(trim($form['seq']));$hasFile=array_key_exists('file',$form)&&!empty($form['file']);if($seq==''&&!$hasFile){echo'沒有上傳序列或文件';return;}$refiles=$this->MultipleFileRearray->reArrayFiles($form['file']);if($refiles[0]['error']!=0||!is_uploaded_file($refiles[0]['tmp_name'])){$hasFile=false;}if($seq==''&&!$hasFile){echo'沒有上傳序列或文件';return;}$dw=$this->dw;$user='na';if(!empty($this->user)){$user=$this->user['username'];}$root=SEQ_BASE_ROOT_DIR;//必須配置$dnhint=$this->city['dnhint'];$dir=$root.''.$dnhint.'/'.$dw.$this->Tools->checkDir($dir,true);//mkdir($dir,0777,true);$fp=$dir.'tmp.fa';$tmp_list_fp=$dir.'tmp-list.txt';$tmp_detail_fp=$dir.'tmp-detail.txt';$tmp_out_tsv_fp=$dir.'tmp-diamond-out.tsv';if($hasFile){$this->_merge_multi_to_one($refiles,$fp);//diamond要求Firstlinemustbeginwith'>'(FASTA)or'@'(FASTQ).$firstChar=substr($seq,0,1);if($firstChar!='>'&&$firstChar!='@'){$seq=">tmp\r\n".$seq;}file_put_contents($fp,$seq);}//先刪除輸出的tsv文件,后續(xù)需要通過判斷此文件是否存在來確定比對是否成功if(file_exists($tmp_out_tsv_fp)){unlink($tmp_out_tsv_fp);}$dir=$this->_get_ku_dir($kud);//$cmd1="cd$dir";$ok=chdir($dir);if(!$ok){echo'進(jìn)入目錄失敗';return;}//執(zhí)行diamondblastxexec($cmd1);//這個不行//diamondblastx-dpep-qICTV.fa-e2e-5-k1-f6-oout.tsv$dbn=$this->_get_ku_name($kud);$cmd3="diamondblastx-d$dbn-q$fp-e2e-5-k1-f6-o$tmp_out_tsv_fp";$rtnarr3=array();$rtnvar3=0;exec($cmd3,$rtnarr3,$rtnvar3);$ok=file_exists($tmp_out_tsv_fp);if(!$ok){echo'比對失敗,請聯(lián)系管理員';if(OUTPUT_DEBUG){echo"<br>\r\n";var_export($rtnarr3);echo"<br>\r\n";var_export($rtnvar3);echo"<br>\r\n";echo$cmd3;}return;}//echo'比對成功';$qShowSeq=array_key_exists('qshowseq',$form)&&$form['qshowseq']=='1';//顯示序列$getWholeSeq=array_key_exists('qwholeseq',$form)&&$form['qwholeseq']=='1';//顯示查詢的完整序列$rsltarr=$this->_parse_tsv($tmp_out_tsv_fp,$kud,$fp,$qShowSeq,$getWholeSeq);$this->flush('比對結(jié)果',array('kud'=>$kud,'rsltarr'=>$rsltarr),'cmpr_result');}//合并上傳的多個文件到一個目標(biāo)文件function_merge_multi_to_one($refiles,$fp){//由于下面是追加內(nèi)容到文件中,所以,如果已經(jīng)存在這個文件,要刪除if(file_exists($fp)){unlink($fp);}//foreach($refilesas$onefile){$tmppath=$onefile['tmp_name'];$ext=$this->_check_then_get_file_ext($onefile);if(empty($ext))return;//判斷是否為zip文件if($ext=='zip'){//解壓文件$src_zip_file=$tmppath;$tgtfafile=$fp;//unzip2onefa函數(shù)是追加內(nèi)容到文件中$rtnarr=$this->ZipFaUtil->unzip2onefa($src_zip_file,$tgtfafile);if(empty($rtnarr['fileOkNum'])){//echo'上傳的zip文件中沒有擴(kuò)展名為fa,fna,fasta,seq,txt的文件';//return;}//move_uploaded_file($tmppath,$fp);file_put_contents($fp,file_get_contents($tmppath),FILE_APPEND);file_put_contents($fp,"\r\n",FILE_APPEND);}}}function_get_dwun($kud){return$kud['danwei'].'/'.$kud['user'].'/'.$kud['name'];}function_parse_tsv($tmp_out_tsv_fp,$kud,$tmp_fna_fp,$qShowSeq,$getWholeSeq){$dwun=$this->_get_dwun($kud);$hits=0;$rows=array();$txt=file_get_contents($tmp_out_tsv_fp);$lines=explode("\n",$txt);if(empty($lines)){echo'比對結(jié)果文件為空';die();return;}//先獲?。簊eqid到序列的映射$seqmap=array();if($qShowSeq&&$tmp_fna_fp!=NULL){$seqmap=$this->SeqUtil->_gen_index_from_tmp($tmp_fna_fp,true);}foreach($linesas$line){if(empty(trim($line))){continue;}//$rows[]=explode("\t",$line);$tmp=array_merge(array($xh),$this->_parse_line($line,$dwun));//if(!empty($seqmap)){$seqid=$tmp[1];if(array_key_exists($seqid,$seqmap)){$seqstr=$seqmap[$seqid]['seqstr'];$tmp[2]=$getWholeSeq?$seqstr:substr($seqstr,0,20);}}$rows[]=$tmp;}$hits=count($rows);$grp=array('hits'=>$hits,'query'=>'','rows'=>$rows);$fields=array('xh','查詢','序列','命中','命中名稱','%一致性','對齊','錯配','缺口','q起始','q截至','s起始','s截至','期望','打分');returnarray('hits'=>$hits,'groups'=>array($grp),'queries'=>0,'fields'=>$fields);}function_parse_line($ln,$dwun){$cells=explode("\t",$ln);if(empty($cells)||count($cells)<2){returnarray();}$seqid=$cells[1];//從數(shù)據(jù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 焊接外加工合同協(xié)議書模板
- 2025年連云港貨運從業(yè)資格考試題目
- 2025年廣安貨運從業(yè)資格證模擬考試
- 《行政單位會計負(fù)債》課件
- 2025年瀘州貨運資格證考試題答案
- 《城市近期規(guī)劃》課件
- 釀酒行業(yè)客戶投訴處理條例
- 租賃招標(biāo)中介協(xié)議
- 社區(qū)活動室窗簾定制方案
- 紅棗加工廠市場營銷合同
- 子癇應(yīng)急預(yù)案
- 土石方工程挖掘機(jī)人員車輛信息登記表
- 崗位價值評估表
- 漢語教程(講課)-第二冊第01課
- 尋貓啟事標(biāo)準(zhǔn)范文
- 高中音樂-《錦雞出山》教學(xué)課件設(shè)計
- DB51T3062-2023四川省高標(biāo)準(zhǔn)農(nóng)田建設(shè)技術(shù)規(guī)范
- 輪轂產(chǎn)品設(shè)計參考手冊2007
- 中國姓氏名字文化
- 部編版八年級歷史上冊《第18課九一八事變與西安事變》教案及教學(xué)反思
- 2023年成都市生物畢業(yè)會考知識點含會考試題及答案
評論
0/150
提交評論