由于某些Excel格式问题,数据已被更改。当有一个数字涉及到一个-破折号时,它会自动改变为日期格式。
例如,1-1更改为01-Jan,25-2在Excel中更改为25-Feb。
但是,带有破折号或其他值(如1A和1001 )的数据是有技巧的。当我将数据加载到Spyder中时,它实际上再次将格式更改为datetime类型。
首先,数据在Excel中如下所示
Name ID Value
Hello 1A 22
Hi 01-Jan 20
What 02-Jan 12
Is 1001 10
Up 25-Mar 11数据以的Pandas格式出现,当前年份(2019年)的代码如下:
import pandas as pd
FAC_sheet = pd.read_excel('data', dtype=str)
Name ID Value
Hello 1A 22
Hi 2019-01-01 00:00:00 20
What 2019-01-02 00:00:00 12
Is 1001 10
Up 2019-03-25 00:00:00 11有没有办法只改变奇怪的日期格式的值,并保持其余的机智?期望的输出是:
Name ID Value
Hello 1A 22
Hi 1-1 20
What 1-2 12
Is 1001 10
Up 3-25 11发布于 2019-02-10 02:51:26
您可以尝试以下操作来尝试并覆盖熊猫中的自动转换日期(用列名替换日期):
pandas.read_excel(xlsx, sheet, converters={'Date': str})来自docs (excel.html):转换器: dict,用于转换某些列中值的函数的可选Dict。键可以是整数,也可以是列标签。
https://stackoverflow.com/questions/54612777
复制相似问题