BEGIN {FS=OFS="," Min=0.0001 } NR==1 { for(I=1;I<=NF;I++) if ($I ~ /^#?[A-Z]/) Num[I] = 1 print next} { for(I in Num) if ($I != Missing) $I = log($I < Min ? Min : $I) print }