0
我想爲具有基因轉錄本的文件創建唯一ID。每一行由transcript_id和intron格式組成:染色體:start_coord-end_coord:strand。 我的文件看起來像這樣:用於創建唯一ID的陣列散列
CUFF.59321 chr7:134136506-134143748:-
CUFF.59321 chr7:134135655-134136337:-
CUFF.59321 chr7:134134550-134135537:-
CUFF.59321 chr7:134133872-134134471:-
CUFF.59321 chr7:134133246-134133748:-
CUFF.59321 chr7:134132814-134133138:-
CUFF.57276 chr7:25163747-25164818:-
CUFF.57276 chr7:25163469-25163569:-
我想重複transcript_ids(第1列)相結合,啓動結束座標他們。 示例CUFF.57276:
CUFF.57276 chr7:25163747-25164818:25163469-25163569:-
爲此我用陣列的散列。
#!/usr/bin/perl -w
use strict;
my $input_gtf = shift @ARGV or die $!;
my %hash;
open (FILE, "$input_gtf") or die $!;
while (<FILE>) {
my $line = $_;
chomp $line;
my @array = split /:\s+/, $line;
my $cuff = $array[0];
my @introns = $array[1];
$hash{$cuff} = [@introns];
}
foreach my $cuff(keys %hash) {
print "$cuff:${hash{$cuff}}\n";
}
close FILE;
但是我得到了以下的輸出:
CUFF.61092 chr8:67968840-67969614:-:ARRAY(0x16a8b10)
CUFF.30258 chr19:16636489-16638890:-:ARRAY(0x15f3b00)
CUFF.47340 chr4:85719262-85722802:-:ARRAY(0x2ae38599de90)
我怎樣才能從可視化陣列(0x16a8b10)語句或類似的一個值?
非常感謝!它完美的工作! –