我正在使用下面的代码进行一些计算。我试图将我的数据四舍五入到最接近的整数,没有任何小数或E + 06。我提供了样本输出。我感谢任何帮助。我试图在我的命令中实现 printf"%。0f" ,但我无法弄清楚如何让它工作。
任何帮助都将不胜感激。
代码
awk '{$2= ($3)*0.25 -2500; $3= ($3)*0.25 +2500 ; print $1"\t"$2"\t"$3 ;}' file.bed> temp
示例输出
Scaf1 7.74271e+06 7.74771e+06
Scaf2 8.21606e+06 8.22106e+06
Scaf3 6291789 629678
答案 0 :(得分:0)
%.0f
:意思是输出没有精度,意味着四舍五入。
akshay@db-3325:/tmp$ cat f
Scaf1 7.74271e+06 7.74771e+06
Scaf2 8.21606e+06 8.22106e+06
Scaf3 6291789 629678
akshay@db-3325:/tmp$ awk '{printf ("%s %.0f %.0f\n",$1,$2,$3)}' f
Scaf1 7742710 7747710
Scaf2 8216060 8221060
Scaf3 6291789 629678