亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 3408 | 回復(fù): 7
打印 上一主題 下一主題

求助依多條件整理序列 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2014-12-17 13:35 |只看該作者 |倒序?yàn)g覽
本帖最后由 tempo8 于 2014-12-17 13:53 編輯

各位戰(zhàn)友好!上百條序列,以6種讀嗎方式翻譯(如圖的上半部分),要作篩選確定其中的一種方式,并分揀出序列,存儲!

篩選標(biāo)準(zhǔn):
0. >這一行為ID,全行保留;1. 含WRKY字符; 2. *后面的M保留(序列起始);WRKY后面的*保留(終止點(diǎn))
數(shù)據(jù)與效果:(只作了其中的一條)
原始數(shù)據(jù)(上百條序列*6)見圖的左半部分,
最終結(jié)果如右半部分!

思路:
chomp嗎?

~/(>.{36})\*.+(M.+WRKY.+\*)/
取$1即為ID這一行,(TCONS_00007474_1 gene=LOC_Os01g09100長度36)
再取$2即為序列M.+WRKY.+\*
print $1\n$2

論壇徽章:
1
程序設(shè)計(jì)版塊每日發(fā)帖之星
日期:2015-10-07 06:20:00
2 [報(bào)告]
發(fā)表于 2014-12-17 14:43 |只看該作者
1.  每次讀一個(gè)seq (seq merge到一行)。
2.  每一個(gè)seq都split by *, 變成array
3.  這個(gè)array的元素 match /M.*?WRKY/ 的話,print.

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2014-12-19 13:48 |只看該作者
本帖最后由 tempo8 于 2014-12-19 14:07 編輯
  1. $name=<STDIN>;
  2. chomp($name);

  3. open (IN, "$name")|| die ("Could not open file");
  4. open (OUT,">out1$name.txt")|| die ("Could not open file");
  5. $f=<IN>;
  6. chomp($f);
  7. print OUT $f;
  8. while(<IN>)
  9. {chomp;
  10. my($line) = $_;
  11. if ($line=~/(>.{36}).+\*.+(M.+WRKY.+?\*)/) {#~/(>.{36}).+(M.+WRKY.+?\*)/
  12.        $line=join ("\n",$1,$2);            
  13.   }
  14. print OUT $line,"\n";
  15. }
  16. close (IN);
  17. close (OUT);
復(fù)制代碼
>TCONS_00010413_1 gene=LOC_Os01g47560RF*RGETYRSIAS*LVIWYGLDGCRSAAKGGKAGKGEKRARQPRFAFMTKSEVDHLEDGYRWRKYGQKAVKNSPYPRSYYRCTTQKCPVKKRVERSYQDPAVVITTYEGKHTHPIPATLRGSTHLLAAHAQAAAAAAAAHQLHHHHGHHGHHGMAPPLPLGSGAAAQFGRSSGIDVLSSFLPRAAAAHHGMTTMGGAAATTTTSHGLNSAISGGGGVSSETTSAVTVAASAQPSSPAALQMQHFMAQDLGLLQDMLLPSFIHGTNQP*RDDHHQSEAELIIRLARQEVIWLSIDHAV*LINISLHLFPPK*SPS

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2014-12-19 14:04 |只看該作者
本帖最后由 tempo8 于 2014-12-20 09:08 編輯

請大俠們斧正!還是有些小問題:

圖左是上述代碼整理的!
圖右半部分是Notepad搜索的!
為何他們整理的結(jié)果不一樣呢?見橢圓部分!

實(shí)際上:我是想取星號*后第一個(gè)M開始的,即(M.+WRKY.+\*)這一部分!)

依多條件整理序列1.jpg (211.84 KB, 下載次數(shù): 42)

依多條件整理序列1.jpg

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2014-12-19 14:30 |只看該作者
本帖最后由 tempo8 于 2014-12-19 16:11 編輯

舉一反三又出問題了

實(shí)際上最終目的是取星號*后第一個(gè)M開始,含[FYW].M.[DE][FYW]這一保守基序,以*終止的序列
可是下面代碼中的RegExp貌似有問題

:wink: 序列如下
>TCONS_00008129Os01g15640_2
FDR*VSFLGI*LCKLLMIFHITAKCDVPTQDNKWHFFAARDRKYPNGSRSNRATVAGY
WKSTGKDRAIKMGKQTIGTKKTLVFHEGRPPTGRRTEWIMHEYYIDERECQACPDMKDAY
VLCRITKRNDWIPGNGNELDNSDPHPEPYDAPPSVISTEQLNPAAEPVVGVEAAPVTVAE
PDGVTTSAITANIPSPSDDINLDDWLNELFDPFFDPEQSLASADLSPDEQNVESSNVGAL
APKVEQDYSSPNENVVDDTEYLLPEDVYNILHPGTDDFNMLQNPLDQYPIQYATDVWSGI
QKEELWSPQANAEPSQSNEAADNGIIRRYRSMKTPETSVPQFKGKTQAKMRVGINKMATS
SSESINQTIKFENSGRLVEHQKNQAHDVASTKRSDAGKPSTELSSNRGFLRGIRNAFAGC
SDARWNMILVAGFAIGVAVVALHIGQRLGLSQRDQQHT*PLGLQVTGFLCFLQSGET*TN

依多條件整理序列2.jpg (156.58 KB, 下載次數(shù): 43)

依多條件整理序列2.jpg

論壇徽章:
0
6 [報(bào)告]
發(fā)表于 2014-12-19 15:43 |只看該作者
本帖最后由 tempo8 于 2014-12-20 09:07 編輯

M[^*]+?W[^*]M[^*][DE][FYW][^*]+?\*在Notepad中查找好了!
可是寫進(jìn)perl又不行了!請戰(zhàn)友們幫忙診斷!謝謝
  1. print "請輸入文件全名\n";
  2. $name=<STDIN>;
  3. chomp($name);

  4. open (IN, "$name")|| die ("Could not open file");
  5. open (OUT,">out1$name.txt")|| die ("Could not open file");
  6. $f=<IN>;
  7. chomp($f);
  8. print OUT $f;
  9. while(<IN>)
  10. {chomp;
  11. my($line) = $_;
  12. if ($line=~/(>.{26}).+\*.+(M[^*]+?W[^*]M[^*][DE][FYW][^*]+?\*)/){
  13.        $line=join ("\n",$1,$2);            
  14.   }
  15. print OUT $line,"\n";
  16. }
  17. close (IN);
  18. close (OUT);
復(fù)制代碼

論壇徽章:
1
程序設(shè)計(jì)版塊每日發(fā)帖之星
日期:2015-10-07 06:20:00
7 [報(bào)告]
發(fā)表于 2014-12-22 07:33 |只看該作者
1. 輸入數(shù)據(jù)奇怪,4樓左圖gene=LOC.. 在ID行,右側(cè)在序列行開始部分。
2. 沒有一行的數(shù)據(jù)滿足> 開始,并含有序列的,所以Perl的代碼應(yīng)該啥都match不上啊?
3. line 5-8, 你把<IN> 的第一行拿出來,chomp了放進(jìn) <OUT>, 這是干嘛?
4.  while loop 里,不匹配的line也會打印給OUT,這是你想要的?

論壇徽章:
0
8 [報(bào)告]
發(fā)表于 2014-12-22 15:31 |只看該作者
本帖最后由 tempo8 于 2014-12-22 15:39 編輯

回復(fù) 7# chenhao392 謝謝提醒!

1. 輸入數(shù)據(jù)奇怪,4樓左圖gene=LOC.. 在ID行,右側(cè)在序列行開始部分。
答:不好意思!右側(cè)是chomp過的(即line 5-8, 你把<IN> 的第一行拿出來,chomp了放進(jìn) <OUT>!
2. 沒有一行的數(shù)據(jù)滿足> 開始,并含有序列的,所以Perl的代碼應(yīng)該啥都match不上?
答:Perl代碼重新整理了!
3. line 5-8, 你把<IN> 的第一行拿出來,chomp了放進(jìn) <OUT>, 這是干嘛?
答:目的是刪除換行符,再搜模式
4.  while loop 里,不匹配的line也會打印給OUT,這是你想要的?
答: 要的結(jié)果是圖左上半部分的fasta格式的序列!

附上能用多條件整理序列的代碼)請斧正!謝謝
  1. {local $/=">";
  2. while (<DATA>){
  3.         if($_=~m/(.{26}).+?\*.+?(M[^*]+W[^*]M[^*][DE][FYW][^*]+?\*)/s){
  4.        my $f=join ("\n",">".$1,$2);
  5.           print $f,"\n";
  6.         }
  7.                         }
  8. }
  9. __DATA__
  10. >TCONS_00008129Os01g15640_2
  11. FDR*VSFFYFLASFVCMPLGI*LCKLLMIFHITAKCDVPTQDNKWHFFAARDRKYPNGSRSNRATVAGY
  12. WKSTGKDRAIKMGKQTIGTKKTLVFHEGRPPTGRRTEWIMHEYYIDERECQACPDMKDAY
  13. VLCRITKRNDWIPGNGNELDNSDPHPEPYDAPPSVISTEQLNPAAEPVVGVEAAPVTVAE
  14. PDGVTTSAITANIPSPSDDINLDDWLNELFDPFFDPEQSLASADLSPDEQNVESSNVGAL
  15. APKVEQDYSSPNENVVDDTEYLLPEDVYNILHPGTDDFNMLQNPLDQYPIQYATDVWSGI
  16. QKEELWSPQANAEPSQSNEAADNGIIRRYRSMKTPETSVPQFKGKTQAKMRVGINKMATS
  17. SSESINQTIKFENSGRLVEHQKNQAHDVASTKRSDAGKPSTELSSNRGFLRGIRNAFAGC
  18. SDARWNMILVAGFAIGVAVVALHIGQRLGLSQRDQQHT*PLGLQVTGFLCFLQSGET*TN
  19. >TCONS_00008129Os01g15640_3
  20. QILGGFETRVMGIGCDPVEIRVDRSVGWLCEEMVFLK*FGIWGIRIAALPSVLQ*DDKSV
  21. NSRLFFLFPF*LAYNRISPHFSGGLM*NLELLPYSY*SF*NFLPCLL*T*NCQ*LERRKH
復(fù)制代碼
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP