输出结果
实现代码
在Excel表格内,如果数据的数值位数超过11位,将会自动以科学计数法显示。
在Excel表格内,最大处理精度为14位数,如果超过14位数值,分界点的数字四舍六入后,后边的均自动变0!
import pandas as pd
import numpy as np
contents={"name": ['Bob', 'LiSa', 'Mary', 'Alan'],
"ID": [1, 2, ' ', None], # 输出 NaN
"age": [np.nan, 28, 38 , '' ], # 输出
"age02": [14, 26, 24 , 6],
"born": [pd.NaT, pd.Timestamp("1990-01-01"), pd.Timestamp("1980-01-01"), ''], # 输出 NaT
"sex": ['男', '女', '女', None,], # 输出 None
"hobbey":['打篮球', '打羽毛球', '打乒乓球', '',], # 输出
"money":[200.0, 240.0, 290.0, 300.0], # 输出
"weight":[140.5, 120.8, 169.4, 155.6], # 输出
"test01":[1, 2.123456789, 3.123456781011126, 4.123456789109999], # 输出
"test02":[1, 2.123456789, 3.123456781011126, 4.123456789109999], # 输出
}
data_frame = pd.DataFrame(contents)
print('Init-------------------------------')
print(data_frame.dtypes)
print(data_frame)
# 将dataframe格式中的数据类型转为object数据类型
data_frame['test02'] = data_frame['test02'].astype('object') # 关键字bool,'object'、'category'、str
data_frame['test02'] = data_frame['test02'].apply(str)
data_frame.to_excel("data_demo.xls")
print('after astype-------------------------------')
print(data_frame.dtypes)
print(data_frame)