in reply to Numerical value of strings

maybe there is something more than a space in your string (if you use -w you should have a warning "Argument ? isn't numeric in addition") however you can always do
$p_data[3] =~ s/\D//g; $total += $p_data[3];