保存Excel要求float64,如果转换了数据类型,同时指定小数位数,此时保存会导致数据位数增多。
所以,保存原数据,需要把数据类型改为float64
df = pd.DataFrame([[0.862513, 0.2354]])
print(df.dtypes)
print(df)
df = df.astype(np.float32)
df = pd.DataFrame.round(df, 4)
print(df.dtypes)
df.to_excel('test01.xlsx') # 即使保留4位小数,excel中的数据也是多位小数
df = df.astype(np.float64)
df = df.round(4)
print(df)
df.to_excel('test02.xlsx') # excel中数据是4位小数