我使用to_csv方法将数据作为csv保存出来。然而,领先的0正被移除。
例如,在输出数据之前,数据格式是这样的:
正如您在第6列“购买订单”中所看到的那样,数据是数字的,但包含前面的0。当输出到csv并在Excel中查看时,我希望保留这种格式并保持领先的0,但是在csv输出中,前面的0将被删除:
有什么办法可以防止这种情况发生吗?下面是我使用的命令:
out1.to_csv(outfile + '.csv', index=False, float_format='%f')
发布于 2020-10-22 19:06:40
我认为这更多的是一个Excel问题,而不是pandas
。如果你用文本编辑器查看你的csv文件,(我猜)你仍然会看到带有前导零的数字。我这么说是因为我遇到过类似的问题:ExcelExcel假设CSV文件、namely dates中的项的格式,并产生不可逆转或烦人的转换。
在本例中,它看起来像是Excel将采购订单看作一个数字,然后将其格式化为数字。它在打开文件时立即这样做,所以您不能返回并格式化单元格或任何东西(零丢失)。
我认为两个简单的选择是:
df.to_excel()
以.xlsx
格式保存。这对我有用一些假的前导零数据。如果您只打算使用Excel中的数据,这可能是最好的。df['Purchase Order'] = '#' + df['Purchase Order']
# df.to_csv('data.csv')
发布于 2020-10-22 19:07:06
你试过使用float_format='%.16f'
或类似的东西吗?
https://stackoverflow.com/questions/64488723
复制相似问题