Global symbol "@keys" requires explicit package name ...
Execution ... aborted due to compilation errors.
####
$ perl -e '
my $x = "MIR200B miRNA";
my %h;
my ($k, $v) = split /:/, $x;
$h{$k} = $v;
use Data::Dumper;
print Dumper(\%h);
'
$VAR1 = {
'MIR200B miRNA' => undef
};
####
#!/usr/bin/env perl
use strict;
use warnings;
my %data;
while () {
next if $. == 1;
chomp;
next unless length;
my ($k, $v) = split;
$data{$k} = $v;
}
# To test result
use Data::Dumper;
print "*** Hash ***\n";
print Dumper(\%data);
print "*** Keys ***\n";
print "$_\n" for keys %data;
print "*** Values ***\n";
print "$_\n" for values %data;
__DATA__
GeneName GeneType
APOL4 protein_coding
CYP2C8 protein_coding
NAALADL2 protein_coding
NANOS3 protein_coding
C20orf204 protein_coding
MIR429 miRNA
MIR200A miRNA
MIR200B miRNA
####
*** Hash ***
$VAR1 = {
'NANOS3' => 'protein_coding',
'C20orf204' => 'protein_coding',
'APOL4' => 'protein_coding',
'MIR429' => 'miRNA',
'NAALADL2' => 'protein_coding',
'MIR200B' => 'miRNA',
'MIR200A' => 'miRNA',
'CYP2C8' => 'protein_coding'
};
*** Keys ***
NANOS3
C20orf204
APOL4
MIR429
NAALADL2
MIR200B
MIR200A
CYP2C8
*** Values ***
protein_coding
protein_coding
protein_coding
miRNA
protein_coding
miRNA
miRNA
protein_coding