in reply to Adding text file data to hashes and array
Hello Tigor,
I was under the impression that you want also to calculate the average or the values e.g. (see bellow):
#!/usr/bin/perl use strict; use warnings; use IO::All; use Data::Dumper; use List::Util qw(sum); sub mean { return sum(@_)/@_; } my @lines = io('in.txt')->chomp->slurp; splice @lines, 0, 1; # remove first line my %hash; foreach my $line (@lines) { $line =~ s/^\s+//; my @elements = split /\s+/, $line; my $reference = splice @elements, 0, 1; $hash{$reference} = mean(@elements); } print Dumper \%hash; __END__ $ perl test.pl $VAR1 = { 'Pineapple' => '25', 'Apple' => '47.25', 'orange' => '22.5' };
If not you can simply do this (see bellow):
#!/usr/bin/perl use strict; use warnings; use IO::All; use Data::Dumper; my @lines = io('in.txt')->chomp->slurp; splice @lines, 0, 1; # remove first line my %hash; foreach my $line (@lines) { $line =~ s/^\s+//; my @elements = split /\s+/, $line; $hash{splice @elements, 0, 1} = \@elements; } print Dumper \%hash; __END__ $ perl test.pl $VAR1 = { 'Pineapple' => [ '10', '20', '30', '40' ], 'orange' => [ '12', '25', '24', '29' ], 'Apple' => [ '40', '45', '50', '54' ] };
I hope this helps, BR.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Adding text file data to hashes and array
by haukex (Archbishop) on Feb 13, 2019 at 18:46 UTC | |
by thanos1983 (Parson) on Feb 18, 2019 at 11:45 UTC | |
|
Re^2: Adding text file data to hashes and array
by Tigor (Novice) on Feb 14, 2019 at 06:51 UTC | |
by poj (Abbot) on Feb 14, 2019 at 10:25 UTC | |
by Tigor (Novice) on Feb 15, 2019 at 07:10 UTC | |
by poj (Abbot) on Feb 15, 2019 at 07:58 UTC | |
by Anonymous Monk on Feb 15, 2019 at 12:05 UTC | |
| |
by haukex (Archbishop) on Feb 15, 2019 at 08:35 UTC | |
by Tigor (Novice) on Feb 15, 2019 at 09:47 UTC | |
| |
by haukex (Archbishop) on Feb 14, 2019 at 09:42 UTC |