【发布时间】:2018-12-12 12:02:24
【问题描述】:
我有一个 csv 文件,其标题包含每列的标题。我想将所有数字转换为只有 2 位小数的科学计数法格式。即 23452 应转换为 2.34e+04 和 0.00023452 应转换为 2.34e-04。
但是,我希望第一列保持不变。它的格式为 text_number ,例如ABC_100。我不希望 ABC_100 转换为 ABC_1e+2。
简单来说,留下第一列和第一行,我希望所有内容都更改为 2 位十进制科学格式。
示例文件:
Name,ClassA,ClassB,ClassC
File_10,2342,0.0212,34.234
File_50,43.234,7834,0.0024
File_100,300,0.0024,2.2341e-5
预期输出:
Name,ClassA,ClassB,ClassC
File_10,2.34e+03,2.12e-02,3.42e+01
File_50,4.3e+01,7.83e+03,2.4e-03
File_100,3e+02,2.4e-03,2.23e-5
【问题讨论】:
-
请添加 3-5 行示例文本并完成预期输出,这将有助于测试解决方案...另外,请添加您遇到问题的代码..
-
@Sundeep :我添加了一个小例子。我对脚本语言没有太多经验,所以我现在没有任何代码。对不起!!!
-
抱歉,但您应该显示需要帮助的代码。标记 wiki(例如:stackoverflow.com/tags/awk/info)可以帮助您入门.. 也可以尝试在线搜索,例如:@ 987654322@
-
@Sundeep:肯定会通过 awk 文档来了解它在 csv 文件上的工作。谢谢。