G'day madM,
There's a whole series of problems with your post:
-
We don't need to see hundreds of data items (you've posted over 500 here); just post sufficient to support whatever issue you're describing.
-
You don't show your input data structure (presumably a hashref with the meaningless name $A).
-
You don't show the output you want.
-
You don't tell us what part of the code you're having difficulties with.
-
You show an @aminos array but don't use it in your code.
-
Your printf format suggests floating point data but all data shown are integers.
-
You've used the repetition operator (x) in two places that suggests you don't fully understand what this is for. It's explained in "perlop: Multiplicative Operators".
Overall, it's very difficult to ascertain what exactly you need help with.
Please read the guidelines in "How do I post a question effectively?" to find out how to compose a question that will help us to help you.
As indicated by the printf documentation,
you should look at sprintf for information on formats.
Here's a best guess at what you're trying to achieve.
If my guess is wrong (which is quite likely), it should at least provide some pointers for improving your code.
#!/usr/bin/env perl
use strict;
use warnings;
my %data = (
A => { A => 5, R => -2, N => -1 },
R => { A => -2, R => 7, N => -1 },
N => { A => -1, R => -1, N => 7 },
);
my @keys = sort keys %data;
print ' ';
printf "%4s" => $_ for @keys;
print "\n";
for my $row (@keys) {
print $row;
printf "%4s" => $data{$row}{$_} for @keys;
print "\n";
}
Output:
A N R
A 5 -1 -2
N -1 7 -1
R -2 -1 7
|