因此,我有将.xls或.xlsx文件转换为csv的python脚本:
df = pd.read_excel(input_name, sheet_name)
df.to_csv(output_name, sep=';', index=False, quotechar='\'', decimal='')
在转换过程中,其中值为整数的input_name文件的数据将变为相同的整数,并在末尾附加一个“ 0”。浮点值(例如,表示为10,0548415184,但长度可变)在那里丢失了分隔符(,),并且也变成了带有额外0的整数。
作为示例,此输入:
1000 98,762154966389 0,00 0,00 98,76 ABC_NAME
将成为:
10000 9876215496638900 0 0 9876215496638900 ABC_NAME
为什么?我该如何解决?
所需的输出应与输入相同(但在csv中而不是xls / xlsx中)
编辑:nuriselcuk给了我答案,现在工作正常。
谢谢!
代码应为:
df.to_csv(output_name, sep=';', index=False, quotechar='\'', decimal=',')
答案 0 :(得分:3)
请使用decimal=','
来识别小数