excel默认处理超14位的数字成科学计数法,且后面的数字默认变0。使用pandas合表或者生成新表时这是最恶心的问题。亲测两个方法有效。
1、若数据量不大,可将to_excel替换成to_csv,csv的包容性还是极强的,但当数据量庞大时,会遇到打不开的情况。
2、万能解法,read_excel时:
df = pd.read_excel("filepath", dtype=str)
一律str型,就不存在数字不数字的情况了。但要注意:
df = df.infer_objects()
"""
"""
df.to_excel("filepath", index=False, encoding="utf-8")