>>>>> "Bernard" == Bernard Golden <[EMAIL PROTECTED]> writes:
Bernard> $VAR1 = [
Bernard> {
Bernard> '1991' => {
Bernard> '2002' => 0,
Bernard> '1992' => '5',
Bernard> '2000' => '1',
Bernard> '1998' => '1'
Bernard> }
Bernard> },
Bernard> {
Bernard> '1992' => {
Bernard> '2002' => 0,
Bernard> '1999' => '1',
Bernard> '2003' => '7',
Bernard> '1993' => '7',
Bernard> '1994' => '1',
Bernard> '1996' => '1',
Bernard> '2000' => 0,
Bernard> '2001' => '1',
Bernard> '1998' => '2'
Bernard> }
Bernard> },
Bernard> {
Bernard> '1993' => {
Bernard> '2002' => '19',
Bernard> '1999' => '17',
Bernard> '2003' => '43',
Bernard> '2004' => '15',
Bernard> '2005' => 0,
Bernard> '1993' => '3',
Bernard> '1994' => '37',
Bernard> '1995' => '13',
Bernard> '1996' => '13',
Bernard> '2000' => '25',
Bernard> '1997' => '10',
Bernard> '2001' => '36',
Bernard> '1998' => '15'
Bernard> }
Bernard> },
Bernard> I wish to create a table with the year on the left, and the
Bernard> counts for each of the subsequent years strung out to the
Bernard> right of that year.
Here's one way:
$ tpage
[%
var1 = [
{
'1991' => {
'2002' => 0,
'1992' => '5',
'2000' => '1',
'1998' => '1'
}
},
{
'1992' => {
'2002' => 0,
'1999' => '1',
'2003' => '7',
'1993' => '7',
'1994' => '1',
'1996' => '1',
'2000' => 0,
'2001' => '1',
'1998' => '2'
}
},
{
'1993' => {
'2002' => '19',
'1999' => '17',
'2003' => '43',
'2004' => '15',
'2005' => 0,
'1993' => '3',
'1994' => '37',
'1995' => '13',
'1996' => '13',
'2000' => '25',
'1997' => '10',
'2001' => '36',
'1998' => '15'
}
}];
FOR year_tuple = var1;
start_year = year_tuple.keys.0;
end_year_hash = year_tuple.$start_year;
end_years = end_year_hash.keys.nsort;
start_year; ":\n";
FOR end_year = end_years;
" -> "; end_year; " = "; end_year_hash.$end_year; "\n";
END;
END;
%]
^D
1991:
-> 1992 = 5
-> 1998 = 1
-> 2000 = 1
-> 2002 = 0
1992:
-> 1993 = 7
-> 1994 = 1
-> 1996 = 1
-> 1998 = 2
-> 1999 = 1
-> 2000 = 0
-> 2001 = 1
-> 2002 = 0
-> 2003 = 7
1993:
-> 1993 = 3
-> 1994 = 37
-> 1995 = 13
-> 1996 = 13
-> 1997 = 10
-> 1998 = 15
-> 1999 = 17
-> 2000 = 25
-> 2001 = 36
-> 2002 = 19
-> 2003 = 43
-> 2004 = 15
-> 2005 = 0
$
--
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<[EMAIL PROTECTED]> <URL:http://www.stonehenge.com/merlyn/>
Perl/Unix/security consulting, Technical writing, Comedy, etc. etc.
See PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training!
_______________________________________________
templates mailing list
[EMAIL PROTECTED]
http://lists.template-toolkit.org/mailman/listinfo/templates