push( @{ $gene_hash{$gene_key}{min_start} }, $start ); push( @{ $gene_hash{$gene_key}{max_end} }, $end ); push( @{ $gene_hash{$gene_key}{max_ex} }, $ex ); #### my $Low=min( @ {$gene_hash{$key}{min_start} } ); my $High=max( @ {$gene_hash{$key}{max_end} } ); my $High_ex=max( @ {$gene_hash{$key}{max_ex} } ); #### while () { chomp; my ($chr, $start, $end, $gene, $ex) = split(/\t/, $_); my $gene_key = $chr.":".$gene; my $cur_gene = $gene_hash{$gene_key}; $$cur_gene{min_start} = $start unless $$cur_gene{min_start}<$start; $$cur_gene{max_end} = $end unless $$cur_gene{max_end}>$end; $$cur_gene{max_ex} = $ex unless $$cur_gene{max_ex}>$ex; $gene_hash{$gene_key} = $cur_gene; } #### my $Low=$gene_hash{$key}{min_start}; my $High=$gene_hash{$key}{max_end}; my $High_ex=$gene_hash{$key}{max_ex};