Python 如何防止pandas to_csv将数字格式化为数字以保留前导0?
我使用to_csv方法将数据帧保存为csv。但是,正在删除前导0 例如,这是数据帧在输出之前的样子: 正如您在第6列“采购订单”中看到的,数据是数字,但包含前导0。我希望在输出到csv并在Excel中查看时保留该格式并保留前导0,但是在csv输出中,前导0被删除: 有没有办法防止这种情况?这是我正在使用的命令:Python 如何防止pandas to_csv将数字格式化为数字以保留前导0?,python,pandas,csv,Python,Pandas,Csv,我使用to_csv方法将数据帧保存为csv。但是,正在删除前导0 例如,这是数据帧在输出之前的样子: 正如您在第6列“采购订单”中看到的,数据是数字,但包含前导0。我希望在输出到csv并在Excel中查看时保留该格式并保留前导0,但是在csv输出中,前导0被删除: 有没有办法防止这种情况?这是我正在使用的命令: out1.to_csv(outfile + '.csv', index=False, float_format='%f') 我认为这更像是一个Excel问题,而不是pandas。如
out1.to_csv(outfile + '.csv', index=False, float_format='%f')
我认为这更像是一个Excel问题,而不是
pandas
。如果您使用文本编辑器查看csv文件,(我猜),您仍然会看到带前导零的数字。我之所以这样说,是因为我在Excel中遇到过类似的问题,假设项目的格式是CSV文件,并产生不可逆或令人讨厌的转换
在本例中,Excel似乎将采购订单视为一个数字,然后将其格式化。它会在打开文件时立即执行此操作,因此您无法返回并格式化单元格或任何内容(零丢失)
我认为两个简单的选择是:
- 使用
以df.to\u excel()
格式保存。这对我来说是有效的,因为有些假前导零数据。如果您只打算使用Excel中的数据,也许这是最好的.xlsx
- 编辑“采购订单”列,使其成为清晰的文本。类似于附加非数字字符(稍后可以删除):
我认为这更像是一个Excel问题,而不是
pandas
。如果您使用文本编辑器查看csv文件,(我猜),您仍然会看到带前导零的数字。我之所以这样说,是因为我在Excel中遇到过类似的问题,假设项目的格式是CSV文件,并产生不可逆或令人讨厌的转换
在本例中,Excel似乎将采购订单视为一个数字,然后将其格式化。它会在打开文件时立即执行此操作,因此您无法返回并格式化单元格或任何内容(零丢失)
我认为两个简单的选择是:
- 使用
以df.to\u excel()
格式保存。这对我来说是有效的,因为有些假前导零数据。如果您只打算使用Excel中的数据,也许这是最好的.xlsx
- 编辑“采购订单”列,使其成为清晰的文本。类似于附加非数字字符(稍后可以删除):
你试过使用
float\u format='%.16f'
或类似的东西吗?你试过使用float\u format='%.16f'
或类似的东西吗?完全同意Excel是罪魁祸首。完全同意Excel是罪魁祸首。
df['Purchase Order'] = '#' + df['Purchase Order']
# df.to_csv('data.csv')