Bonjour,

je voudrais demander comment puis je faire pour sauter les lignes,exemple:
je prends les Id a a chaque fois par exemple la premiere ligne "32_1_CBOZ_CBPA", et si je retrouve cet id je saute la ligne et je prends un autre qui differe, je ne sais pas je voulais faire un hash mais je ne sais pas ou mettre le test dans mon code? merci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
 
#!/usr/local/bin/perl
my %done = 1;
my %hash=();
my %hash2=();
 
open (DESC2, "output_cv2");
while(<DESC2>){
	chomp;
	my ($id,$coord1,$coord2)=(split/\t/)[9,-1,-3];
	$done=$id;
	my @exon1=();
	my @blocsize1=();
	foreach my $exon (split/,/,$coord2){
		 my ($s)=split(/\,/,$exon);
		 push @exon1,($s);
		 }
	foreach my $blocsize (split/,/,$coord1){
		  my ($L)=split(/\,/,$blocsize);
		  push @blocsize1,($L);
		 }
	for (my $i =0; $i<$#blocsize1; $i++){
		my $e=$exon1[$i]+ $blocsize1[$i];
		$hash{$id}=$e;
		$hash2{$id}=$s;
		}
	print $id,"\t",$hash{$id}-$hash2{$id},"\n";
 
 
 
 
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
3459	0	0	0	0	0	17	2500	-	32_1_CBOZ_CBPA	3459	0	3459	C169-scaffold_4	2986206	2937909	2943868	18	52,49,80,253,77,209,85,1175,211,144,143,149,155,98,191,68,157,163	0,52,101,181,434,511,720,805,1980,2191,2335,2478,2627,2782,2880,3071,3139,3296	2937909,2938112,2938302,2938459,2938807,2938997,2939313,2939526,2940879,2941234,2941502,2941803,2942057,2942325,2942581,2942897,2943102,2943705,
2650	0	0	0	0	0	7	1511	+	34_2_CBOZ_CBPA	2650	0	2650	C169-scaffold_7	2484457	1251713	1255874	8	362,214,176,270,1348,116,145,19	0,362,576,752,1022,2370,2486,2631	1251713,1252387,1252724,1253180,1253742,1255202,1255459,1255855,
2519	0	0	0	0	0	9	3883	-	46_3_CBOZ_CBPA	2519	0	2519	C169-scaffold_8	1964347	1172240	1178642	10	897,179,208,164,220,154,155,255,192,95	0,897,1076,1284,1448,1668,1822,1977,2232,2424	1172240,1173512,1174129,1174643,1175214,1175752,1176302,1176714,1177222,1178547,
2327	0	0	0	0	0	7	2195	-	108_4_CBOZ_CBPA	2327	0	2327	C169-scaffold_15	1434801	1007548	1012070	8	157,171,100,188,144,185,102,1280	0,157,328,428,616,760,945,1047	1007548,1008029,1008488,1008853,1009441,1009941,1010385,1010790,
2291	0	0	0	0	0	7	1129	-	51_1_CBOZ_CBPA	2291	0	2291	C169-scaffold_22	985987	948089	951509	8	300,151,176,150,99,117,153,1145	0,300,451,627,777,876,993,1146	948089,948749,948985,949313,949572,949799,950039,950364,
2193	6	0	0	1	12	13	6015	+	29_1_CBOZ_CBPA	2211	0	2211	C169-scaffold_19	1345290	317921	326135	14	304,146,36,97,121,146,215,160,120,149,175,184,61,285	0,304,450,486,583,704,850,1065,1225,1345,1494,1669,1853,1926	317921,318593,319051,319265,319958,320700,321351,322148,322684,323378,323923,324696,325364,325850,
2060	0	0	0	0	0	8	1651	+	134_1_CBOZ_CBPA	2060	0	2060	C169-scaffold_16	1433446	531474	535185	9	78,17,76,124,85,219,943,154,364	0,78,95,171,295,380,599,1542,1696	531474,531641,531772,531999,532235,532697,533260,534475,534821,