在Python中将不需要的datetime格式的数据值更改为带破折号的数字

在Python中将不需要的datetime格式的数据值更改为带破折号的数字,python,python-3.x,pandas,datetime,dataframe,Python,Python 3.x,Pandas,Datetime,Dataframe,我有由于Excel格式问题而更改的数据。当有一个数字与-破折号相关时,它会自动更改为日期格式 例如,Excel中将1-1更改为01 Jan,25-2更改为25 Feb 但是,带有破折号或其他值(如1A和1001的数据是正确的。当我将数据加载到Spyder中时,它实际上再次将格式更改为datetime类型 首先,数据在Excel中如下所示: Name ID Value Hello 1A 22 Hi 01-Jan 20 What

我有由于Excel格式问题而更改的数据。当有一个数字与
-
破折号相关时,它会自动更改为日期格式

例如,Excel中将
1-1
更改为
01 Jan
25-2
更改为
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
数据以Python的当前年份(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

您可以尝试以下操作,尝试并覆盖熊猫中的日期自动转换(将日期替换为列名):

从文档()中: 转换器:dict,可选
用于转换某些列中的值的函数。键可以是整数,也可以是列标签。

您可以尝试以下操作,以尝试覆盖pandas中的日期行为自动转换(将日期替换为列名):

从文档()中: 转换器:dict,可选
用于转换某些列中的值的函数。键可以是整数或列标签。

使用用于加载数据的代码会有所帮助。否则,真的无法判断你做错了什么。我在Excel中看到过这个问题。如果要从
.csv/.txt
文件导入此数据,请将其导入为文本,以保持格式,否则excel会将其转换为日期。是否有简单的命令将csv作为txt打开?据我所知.txt是以.csv的形式读取的,但不是相反。好吧,两者之间应该没有区别。如何将数据加载到Excel中?是否来自某个
.txt/.csv
文件?使用用于加载数据的代码会很有帮助。否则,真的无法判断你做错了什么。我在Excel中看到过这个问题。如果要从
.csv/.txt
文件导入此数据,请将其导入为文本,以保持格式,否则excel会将其转换为日期。是否有简单的命令将csv作为txt打开?据我所知.txt是以.csv的形式读取的,但不是相反。好吧,两者之间应该没有区别。如何将数据加载到Excel中?它是来自某个
.txt/.csv
文件吗?
pandas.read_excel(xlsx, sheet, converters={'Date': str})