#!/usr/bin/perl use strict; use warnings; my $fileName = $ARGV[0]; my $numberOfColumns = 0; my @line = (); my $lineNumber = 0; my $x = 0; my $p = 0; my @arrayOfArrays = (); my $firstTime = 0; open (FILE, "<", $fileName); while () { chomp; @line = split (",", $_); if ($firstTime == 0) { $numberOfColumns = @line; $firstTime = 1; } for($x = 0; $x < $numberOfColumns; $x += 1) { $arrayOfArrays[$x][$lineNumber] = $line[$x]; } $lineNumber +=1; } #to access your values: column one: $p=0, column 2: $p = 1 etc. for ($p = 0; $p < $numberOfColumns; $p += 1) { for ($x= 0; $x<$lineNumber; $x += 1) { print STDERR "$arrayOfArrays[$p][$x]\n"; } }