Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re: Keyed matrix

by aitap (Deacon)
on Sep 03, 2012 at 12:21 UTC ( #991414=note: print w/replies, xml ) Need Help??

in reply to Keyed matrix

What do you mean by "matrix"? There is no object in Perl (at least in the core modules) called "matrix". See perldata.

What you actually need is a hash of arrays. Hashes can contain only (possibly blessed) scalar values, so you cannot just put arrays in the hash. Instead, need to create array references and put them in a hash. See perlreftut for more information on this. For example,

my %hash = ( one => [ 1, 2, 3, ], two => [ 4, 5, 6, 7, ], three => [ 8, ], ); print ((join "\t", (sort keys %hash)),"\n"); my $i = 0; my $defined; do { $defined = 0; map {$defined++ if defined $hash{$_}->[$i]} (keys %hash); for (sort keys %hash) { print $hash{$_}->[$i] // " ", "\t"; }; print "\n"; $i++; } while ($defined > 0); __END__ one three two 1 8 4 2 5 3 6 7

Sorry if my advice was wrong.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://991414]
[marto]: hey Corion, how's things?

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (5)
As of 2017-06-29 07:59 GMT
Find Nodes?
    Voting Booth?
    How many monitors do you use while coding?

    Results (655 votes). Check out past polls.