Issue in round of and exponential value


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Issue in round of and exponential value
# 1  
Old 01-08-2016
Issue in round of and exponential value in awk

we are facing an issue where the sum of column value is getting rounded of before and after decimal.

Code:
[edmgr@lcosedd nad]$  awk -F "|" '{{sum = sum + $11}} END{print sum}' ARINSO_GLD001.txt
6.07398e+07   -- initial value

 [edmgr@lcosedd nad]$  awk -F "|" '{{sum = sum + $11}} END{print sum}' ARINSO_GLD001.txt | awk '{ print sprintf("%.5f", $1); }'
60739800.00000 -- after removing exponential spaces.

but the actual sum is 60739766.08

Please assist Smilie

Last edited by nadeemrafikhan; 01-08-2016 at 08:41 AM..
# 2  
Old 01-08-2016
awk uses double precision arithmetic - which means on most systems you have 15 digits of precision.

What you are doing is defeating that. Try:

Code:
awk -F "|" '{{sum = sum + $11}} END{printf("%11.3f\n", sum) }' ARINSO_GLD001.txt

This User Gave Thanks to jim mcnamara For This Post:
# 3  
Old 01-09-2016
Thanks Jim , it really works.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Unused ": value not completely converted" and round value issue

I am trying to convert decimal value of last two digit to round but fail. I am using this method awk '/HORIZONTAL/,/VERTICAL/' $1 | sed '1d;$d' | awk -F " " '{print $2}'| xargs printf '%1.1f\n'| grep -oP '\S+' | tr -s "\n" " " |sed 's/ *$//' Input 0.01 0.02 0.03 0.05 0.07 0.10... (3 Replies)
Discussion started by: nadeemrafikhan
3 Replies

2. Shell Programming and Scripting

Awk-Exponential Values

Hi Friends, My input Gene1 4.14887050399078e-49 Gene2 5.39999891278828e-10 Gene 2.22108326729483e-11 How do I change the above exponential values to normal values? Thanks (3 Replies)
Discussion started by: jacobs.smith
3 Replies

3. Shell Programming and Scripting

AWK - Avoid exponential value

I'm using the following command, but how can I avoid printing exponential value (highlighted):- awk ' BEGIN { OFS=FS="|" } { if(NF>4) $10=int(((3.77*$11)/100 + $11)); } { print } ' infile CR|20121022|105|GSM|N|SAN|00122|SAN|75082|6.03929e+06|5819880|5794769|25111... (7 Replies)
Discussion started by: Yoda
7 Replies

4. Shell Programming and Scripting

sum in exponential form

Hello guys, i have got a flat file and it has got balance amount value as one of its fields. my mission is to add the total of those balance values. i am getting that but the result is coming up in exponential form, which is not the right way. i want to see the sum as a normal decimal number but... (7 Replies)
Discussion started by: jdsony
7 Replies

5. Shell Programming and Scripting

Convertion from Exponential to Decimal

I am trying to read values from excel and perform some calculations but I am getting below error: expr 2.326227180240883E7 / 8.509366417956961E8 expr: non-numeric argument Can anyone let me know how do i convert thse exponential numbers to decimal. (2 Replies)
Discussion started by: sachinnayyar
2 Replies

6. Shell Programming and Scripting

Exponential issues

I have the below awk command to search a row and find the line number. It returns the value in exponential. I understand we can use the print "%.0f\n" to convert the exponential. I wanted to have this in my awk command. Can anyone advise bnd=`awk '/^GS/{p=NR}$0~"^ABC.*\\*"k{f=1}/^GE/&&f{print... (3 Replies)
Discussion started by: Muthuraj K
3 Replies

7. Shell Programming and Scripting

Sorting exponential notation

Hi, I just want to sort my file with exponential notation. For example: 1;2;4;s 1;5e-01;4;s 1;1;4;s I used sort -gk2, but it does not sort in the correct way. What's wrong? (15 Replies)
Discussion started by: NilsMueller
15 Replies

8. Shell Programming and Scripting

exponential format

awk -F"\t" -vv1=$name 'BEGIN{OFS="\t"} {gsub ("http://www."v1".com","",$6);print $1"\t-\t-","",$6,$7,$9,$2,$14,$15"\t""Apache=-\t-",$8*1000000"\t-\t-\t-\tdeflate=-\trmt=-"}' file.txt > a.txt file.txt 144.130.7.153 www.chi.com - 18/Jul/2010:00:00:00 +0000 GET... (3 Replies)
Discussion started by: sandy1028
3 Replies

9. Shell Programming and Scripting

Convert exponential value to decimal

Hi, Here is my script to read a file into array: awk -F '+' ' # load first file into array indexed by fields 1 and 2 NR == FNR { file1nr = FNR for (i=3; i<NF; i++) { file1 = $i } I have this... (5 Replies)
Discussion started by: Sangtha
5 Replies

10. Shell Programming and Scripting

Converting exponential values

Hi. Is there a way to convert a value outputted as(for example): 4.14486e+06 into a regular format: 4144860 I suppose in plain english i want to move the decimal point 6 places to the right. please??? (2 Replies)
Discussion started by: rleebife
2 Replies
Login or Register to Ask a Question