使用Libre Office Calc从csv科学数字表示导入不允许任何数学值

我有一个带有一些小数字的csv文件。 当我使用Libre Office Calc导入它时,数字用科学记数法表示。

然后,当我尝试使用这些数字进行任何数学运算时,我总是获得#VALUE!

为什么??

相反,在同一个csv中我也有例如,在单元格I1内部为0 ,如果我做=I1+1则结果为1

那么其他数字有什么问题呢?

这是一个文件的例子: 在此处输入图像描述

说明

请注意,您问题中屏幕截图中D列中的数字正确调整为数字,而带有点的其他数字则调整为文本。

我认为你有一个使用逗号而不是点的语言环境. 分开小数。

因此,如果在导入数据之前转换csv文件(用逗号替换点),它应该可以工作。

转换为tr

您可以使用tr用逗号替换小数点。 最好先检查(在编辑器中)没有要保留的“其他点”。 例如,可能有逗号分隔列,您应该在替换小数点之前将它们转换为制表符。

例如(使用您自己的文件名)

 < csv-dot.txt tr ',' '\t' | tr '\.' ',' > csv-comma.txt 

 $ echo 5.4e-07,4.00e-07>csv-dot.txt $ < csv-dot.txt tr ',' '\t' | tr '\.' ',' > csv-comma.txt $ for i in csv-*;do echo -n "$i: ";cat "$i"; done csv-comma.txt: 5,4e-07 4,00e-07 csv-dot.txt: 5.4e-07, 4.00e-07