当我向csv导出数据帧时,我遇到了问题。我有一个例如1520的列号,但是当我使用to_csv导出到csv时,在te文件中我找到带有十进制的数字1520.0,可以消除“.0”而只保留数字“1520”?
all.to_csv('D:\ test.csv',sep =',',header = False,index = False)
我已经解决了这个代码,但是当我有很多列时会很复杂
for i in range(81,698):
print("Creacion de archivo LOTE_AMD_M{0}.csv".format(i))
data = pandas.read_sql(sql2.format(i),cnxn)
todo=pandas.concat([dat,data])
ruta='D:\descarga\LOTE_AMD_M{0}.csv'.format(i)
r=todo
r=r.fillna('')
archivo= open(ruta,"a")
count=0
for index,row in r.iterrows():
d=''
for j in list(todo):
if j == 'C1':
t=str(row[j])
d+=",{0}".format(t[0:len(t)-2])
else:
d+=",{0}".format(row[j])
archivo.write(d[1:len(d)]+'\n')
count+=1
if count%1000==0:
print("se han insertado ",count," lineas")
archivo.close()
print("termino Carga SQL Query")
@abarnert已在类似问题中回答了这个问题,请参阅:https://stackoverflow.com/questions/16763327/python-round-leaving-a-trailing-0
基本上,您应该将float_format
参数设置为float_format='%.0f'
。那应该做的。