2017-05-10 135 views
0

修改精確我有CSV文件,我需要與價值1.3擴展CSV文件的第一列。我可以使用awk將值爲1.3的第一列csv文件進行縮放。這是我所使用縮放一行代碼:乘以科學記數法和AWK

$ awk -F, '{$1=$1*1.3;print}' OFS=, input.csv > output.csv 

現在的問題是,縮放後,我想要的結果高達9個或10位小數,但我得到高達5位小數。

input.csv文件格式:

1.2839e-06,  6.5940E-03 
1.2839e-06,  4.0718E-03 

預期Output.csv文件格式::

1.28390080e-06, 6.5940E-03 
1.28390340e-06, 4.0718E-03 

9.876160000E-07 , 6.5940E-03 
9.876180000E-07 , 4.0718E-03 

output.csv文件格式(運行AWK命令之後)在awk命令中更改什麼以獲得預期結果?

回答

0

與此類似,使用sprintf

$ awk '{$1=sprintf("%.8e",$1*1.3);print}' file 
1.28390080e-06 , 6.5940E-03 
1.28390340e-06 , 4.0718E-03 
+1

非常感謝你。它的工作原理 –

+1

它不顯示所述第二列中,所以我沒有在線路這種變化以顯示第二列還 - > AWK -F「{$ 1 =的sprintf( 「%8E。」,$ 1 * 1.3); print}'OFS =,input.csv> output.csv –

+0

顯然,我沒有打擾過'-F,'這樣可能會導致問題,如果''之前沒有空格,... –