免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: huang6894
打印 上一主题 下一主题

学渣求学霸帮忙改改作业。。。 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2014-03-12 17:57 |只看该作者
試試看吧

沒有檔案可以測試

非常有可能會有error
  1. %G_code=("TCA"=>"S",#Serine
  2.                                  "TCC"=>"S",#Serine
  3.                                  "TCG"=>"S",#Serine
  4.                                  "TCT"=>"S",#Serine
  5.                                  "TTC"=>"F",#Phenylalanine
  6.                                  "TTT"=>"F",#Phenylalanine
  7.                                  "TTA"=>"L",#Leucine
  8.                                  "TTG"=>"L",#Leucine
  9.                                  "TAC"=>"Y",#Tyrosine
  10.                                  "TAT"=>"Y",#Tyrosine
  11.                                  "TAA"=>"_",#Stop
  12.                                  "TAG"=>"_",#Stop
  13.                                  "TGC"=>"C",#Cysteine
  14.                                  "TGT"=>"C",#Cysteine
  15.                                  "TGA"=>"_",#Stop
  16.                                  "TGG"=>"W",#Tryptophan
  17.                                  "CTA"=>"L",#Leucine
  18.                                  "CTC"=>"L",#Leucine
  19.                                  "CTG"=>"L",#Leucine
  20.                                  "CTT"=>"L",#Leucine
  21.                                  "CCA"=>"P",#Proline
  22.                                  "CCC"=>"P",#Proline
  23.                                  "CCG"=>"P",#Proline
  24.                                  "CCT"=>"P",#Proline
  25.                                  "CAC"=>"H",#Histidine
  26.                                  "CAT"=>"H",#Histidine
  27.                                  "CAA"=>"Q",#Glutamine
  28.                                  "CAG"=>"Q",#Glutamine
  29.                                  "CGA"=>"R",#Arginine
  30.                                  "CGC"=>"R",#Arginine
  31.                                  "CGG"=>"R",#Arginine
  32.                                  "CGT"=>"R",#Arginine
  33.                                  "ATA"=>"I",#Isoleucine
  34.                                  "ATC"=>"I",#Isoleucine
  35.                                  "ATT"=>"I",#Isoleucine
  36.                                  "ATG"=>"M",#Methionine
  37.                                  "ACA"=>"T",#Threonine
  38.                                  "ACC"=>"T",#Threonine
  39.                                  "ACG"=>"T",#Threonine
  40.                                  "ACT"=>"T",#Threonine
  41.                                  "AAC"=>"N",#Asparagine
  42.                                  "AAT"=>"N",#Asparagine
  43.                                  "AAA"=>"K",#Lysine
  44.                                  "AAG"=>"K",#Lysine
  45.                                  "AGC"=>"S",#Serine
  46.                                  "AGT"=>"S",#Serine
  47.                                  "AGA"=>"R",#Arginine
  48.                                  "AGG"=>"R",#Arginine
  49.                                  "GTA"=>"V",#Valine
  50.                                  "GTC"=>"V",#Valine
  51.                                  "GTG"=>"V",#Valine
  52.                                  "GTT"=>"V",#Valine
  53.                                  "GCA"=>"A",#Alanine
  54.                                  "GCC"=>"A",#Alanine
  55.                                  "GCG"=>"A",#Alanine
  56.                                  "GCT"=>"A",#Alanine
  57.                                  "GAC"=>"D",#Aspartic Acid
  58.                                  "GAT"=>"D",#Aspartic Acid
  59.                                  "GAA"=>"E",#Glutamic Acid
  60.                                  "GAG"=>"E",#Glutamic Acid
  61.                                  "GGA"=>"G",#Glycine
  62.                                  "GGC"=>"G",#Glycine
  63.                                  "GGG"=>"G",#Glycine
  64.                                  "GGT"=>"G" #Glycine
  65.                                 );

  66. open(IN,$ARGV[0]);

  67. while(<IN>)
  68. {
  69.         chomp;
  70.         push(@{$seq_extract{(split)[0]}},[(split)[3,4],$_]) if(/CDS/);
  71. }

  72. close(IN);

  73. open(IN,$ARGV[1]);
  74. open(OUT,);
  75. open(AA,);

  76. while(<IN>)
  77. {
  78.         chomp;
  79.        
  80.         if(/^>/)
  81.         {
  82.                 if($scaffold)
  83.                 {
  84.                         foreach $part_scaffold(@{$seq_extract{$scaffold}})
  85.                         {
  86.                                 $nt_seq=substr($seq,$part_scaffold[0]-1,$part_scaffold[1]-$part_scaffold[0]+1);
  87.                                 print OUT join("\n",">".$part_scaffold[2],map{substr($nt_seq,$_*60,60)}(0..int(length($nt_seq)/60))),"\n";
  88.                                 ($aa_seq=$nt_seq)=~s/(.{3})/${$1}/g;
  89.                                 print AA join("\n",">".$part_scaffold[2],map{substr($aa_seq,$_*60,60)}(0..int(length($aa_seq)/60)))"\n",
  90.                         }
  91.                        
  92.                         undef($seq);
  93.                 }
  94.                
  95.                 ($scaffold=(split)[0])=~s/^>//g;
  96.         }
  97.         else
  98.         {
  99.                 $seq.=$_;
  100.         }
  101. }

  102. close(IN);
  103. close(OUT);
  104. close(AA);
复制代码

论坛徽章:
8
技术图书徽章
日期:2013-08-22 11:21:28未羊
日期:2015-01-19 22:22:25巳蛇
日期:2014-08-11 16:53:08子鼠
日期:2014-05-29 09:04:44摩羯座
日期:2014-04-11 14:15:07丑牛
日期:2014-01-24 12:41:28金牛座
日期:2013-11-21 17:38:28射手座
日期:2015-01-21 08:50:32
22 [报告]
发表于 2014-03-12 19:12 |只看该作者
本帖最后由 huang6894 于 2014-03-13 09:55 编辑

回复 21# afukada
  1. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  2. Use of uninitialized value $part_scaffold[0] in subtraction (-) at test.pl line 94, <IN> line 23.
  3. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  4. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  5. Use of uninitialized value $part_scaffold[0] in subtraction (-) at test.pl line 94, <IN> line 23.
  6. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  7. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  8. Use of uninitialized value $part_scaffold[0] in subtraction (-) at test.pl line 94, <IN> line 23.
  9. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  10. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  11. Use of uninitialized value $part_scaffold[0] in subtraction (-) at test.pl line 94, <IN> line 23.
  12. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  13. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  14. Use of uninitialized value $part_scaffold[0] in subtraction (-) at test.pl line 94, <IN> line 23.
  15. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  16. Use of uninitialized value in subtraction (-) at test.pl line 94, <IN> line 23.
  17. Use of uninitialized value $part_scaffold[0] in subtraction (-) at test.pl line 94, <IN> line 23.
复制代码
然后就没有结果生成了。。。

论坛徽章:
0
23 [报告]
发表于 2014-03-13 16:54 |只看该作者
本帖最后由 afukada 于 2014-03-13 17:00 编辑

是我code有錯誤

我知道fasta和gff的檔案比較大

你可不可以把兩個檔案切一點點放上來

這樣我比較好debug

论坛徽章:
5
丑牛
日期:2014-01-21 08:26:26卯兔
日期:2014-03-11 06:37:43天秤座
日期:2014-03-25 08:52:52寅虎
日期:2014-04-19 11:39:48午马
日期:2014-08-06 03:56:58
24 [报告]
发表于 2014-03-13 17:09 |只看该作者
本帖最后由 pitonas 于 2014-03-13 10:11 编辑

{:2_172:} 大神, 94 大神, 虽然 afukada 大神有解了, 还是
测试下这个 sub 看看
  1. sub extract {
  2.     my ( $SEQ, $start, $len, $line ) = @_;
  3.     my ( $Aaa, $Seq ) = ( substr $SEQ, $start - 1, $len ) x 2;

  4.     $Seq =~ s/.{60}/$&\n/g;
  5.     $Aaa =~ s/.{3}/$code{$&} || 'X'/eg; # X => NO KEY IN %code
  6.     $Aaa =~ s/.{60}/$&\n/g;

  7.     print OUT ">$line", $Seq, $Seq =~ /\n$/ ? '' : "\n";
  8.     print AA  ">$line", $Aaa, $Aaa =~ /\n$/ ? '' : "\n";
  9. }
复制代码

论坛徽章:
8
技术图书徽章
日期:2013-08-22 11:21:28未羊
日期:2015-01-19 22:22:25巳蛇
日期:2014-08-11 16:53:08子鼠
日期:2014-05-29 09:04:44摩羯座
日期:2014-04-11 14:15:07丑牛
日期:2014-01-24 12:41:28金牛座
日期:2013-11-21 17:38:28射手座
日期:2015-01-21 08:50:32
25 [报告]
发表于 2014-03-13 22:15 |只看该作者
回复 23# afukada


    sorry。。。刚刚才看到。。。不知道这样的测试数据有没有用。。。太感谢你了。。。 Desktop.7z (443.71 KB, 下载次数: 3)

论坛徽章:
8
技术图书徽章
日期:2013-08-22 11:21:28未羊
日期:2015-01-19 22:22:25巳蛇
日期:2014-08-11 16:53:08子鼠
日期:2014-05-29 09:04:44摩羯座
日期:2014-04-11 14:15:07丑牛
日期:2014-01-24 12:41:28金牛座
日期:2013-11-21 17:38:28射手座
日期:2015-01-21 08:50:32
26 [报告]
发表于 2014-03-13 22:16 |只看该作者
回复 24# pitonas


    吐司大神厉害啊。。。谢谢你,谢谢

论坛徽章:
7
巳蛇
日期:2013-11-28 09:22:59天秤座
日期:2014-10-25 15:40:452015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之德黑兰石油
日期:2015-07-15 08:46:452015亚冠之平阳省
日期:2015-11-08 16:27:53白银圣斗士
日期:2015-11-14 09:58:12
27 [报告]
发表于 2014-03-14 11:22 |只看该作者
推荐楼主试试BioPerl,处理这个文件会好用很多!

论坛徽章:
8
技术图书徽章
日期:2013-08-22 11:21:28未羊
日期:2015-01-19 22:22:25巳蛇
日期:2014-08-11 16:53:08子鼠
日期:2014-05-29 09:04:44摩羯座
日期:2014-04-11 14:15:07丑牛
日期:2014-01-24 12:41:28金牛座
日期:2013-11-21 17:38:28射手座
日期:2015-01-21 08:50:32
28 [报告]
发表于 2014-03-14 11:24 |只看该作者
回复 27# b114213903


    没办法,作业要求用perl,不能调用写好的包

论坛徽章:
0
29 [报告]
发表于 2014-03-14 13:16 |只看该作者
剛剛debug

才忽然發現你的annotation裡面

有負股的部分

這部分要做reverse complement嗎?

论坛徽章:
8
技术图书徽章
日期:2013-08-22 11:21:28未羊
日期:2015-01-19 22:22:25巳蛇
日期:2014-08-11 16:53:08子鼠
日期:2014-05-29 09:04:44摩羯座
日期:2014-04-11 14:15:07丑牛
日期:2014-01-24 12:41:28金牛座
日期:2013-11-21 17:38:28射手座
日期:2015-01-21 08:50:32
30 [报告]
发表于 2014-03-14 13:46 |只看该作者
回复 29# afukada


    恩恩,要的。。。不过我需求忘记加上了。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP