数字大于7位的Csvwrite

时间:2013-02-20 04:08:58

标签: matlab csv export-to-csv

所以,我有一个文件,旨在解析一个相当大的csv文件来清除一些数据点。下面列出了文件中的三个值(超过400,000+):

Vehicle_ID  Frame_ID    Tot_Frames  Epoch_ms    Local_X
2           29          1707        1163033200  8.695
2           30          1707        1163033300  7.957
2           31          1707        1163033400  7.335

我在这里要做的是采用这样的先前过滤的数据点并使用csvwrite将其插入另一个csv文件。但是,csvread只会以双精度方式接收Epoch_ms,将值存储为1.1630e + 09,这足以读取,因为它保留了用于MATLAB操作的数字的原始值。

但是,在csvwrite期间,该精度会丢失,并且每个数据点都写为1.1630e9。

如何让csvwrite以更高的精度处理数字?

1 个答案:

答案 0 :(得分:10)

dlmwrite与精确参数一起使用,例如%i。默认分隔符是逗号,就像CSV文件一样。

dlmwrite(filename, data, 'precision', '%i')