Another thought: if the order of lines in the output does not matter it would be simpler.
use strict; use warnings; my $letters = <DATA>; my @letters = $letters =~ /\w+/g; while(<DATA>) { next if /SampleID/; chomp; my @recs = split /\s+/; my $ctr = 2; for my $letter (@letters) { print "$letter\t".(join "\t", @recs[0,1,$ctr++])."\n"; } } __DATA__ A C F SampleID Time ObsConc ObsConc ObsConc 5 24 2.27E+06 687.02 32521.94 5 168 1.92E+06 525.02 22198.44 5 12 2.94E+06 896.39 41331.61 5 -0.5 2.23E+06 942.34 40616.49 5 8 4.03E+06 1371.32 45863.69 6 24 1.02E+06 1057.89 46341.04 6 168 3.14E+06 4987.32 42166.08
In reply to Re^3: format conversion, please help
by hdb
in thread format conversion, please help
by david_lyon
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |