2
不使用“ e”来操纵科学格式
我正在尝试处理一个包含以科学计数法表示的数字但没有e符号(即1.2e+3写为)的文件1.2+3。 我想到的最简单的方法awk是使用函数替换+为e+,gsub并在新文件中进行计算。减号情况也是如此。因此,可以使用以下命令完成简单的修复 awk '{gsub("+", "e+", $1); print $1, $2, $3, $4, $5}' file_in 并在所有列中执行相同操作。 但是,该文件还包含负数,这使事情变得更加复杂。可以看到一个示例文件 1.056000+0 5.000000-1 2.454400-3 2.914800-2 8.141500-6 2.043430+1 5.000000-1 2.750500-3 2.698100-2-2.034300-4 3.829842+1 5.000000-1 1.969923-2 2.211364-2 9.499900-6 4.168521+1 5.000000-1 1.601262-2 3.030919-2-3.372000-6 6.661784+1 5.000000-1 5.250575-2 3.443669-2 2.585500-5 7.278104+1 5.000000-1 2.137055-2 2.601701-2 8.999800-5 9.077287+1 5.000000-1 1.320498-2 2.961020-2-1.011600-5 9.248130+1 5.000000-1 3.069610-3 …