I don't understand why you are doing split twice (first for the row and then for the column).
If you just want to return a given column from a CSV you could do it simply with:
my @result = map {
my @row = split /,/ => $_;
$row[$column_number] } @lines;