Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中,如何将float列转换为只有年和月的datetime?_Python_Pandas_To Date - Fatal编程技术网

在Python中,如何将float列转换为只有年和月的datetime?

在Python中,如何将float列转换为只有年和月的datetime?,python,pandas,to-date,Python,Pandas,To Date,我有一个这样的日期栏 DATE CÓDIGO ... UNIDADE VALOR 0 2009.06 10000.0 ... NaN NaN 1 2009.06 10100.0 ... NÃO SE APLICA . 2 2009.06 10101.0 ... M2 0.46 3 2009.06 10102.0 ... UN 15

我有一个这样的日期栏

    DATE   CÓDIGO  ...          UNIDADE  VALOR
0  2009.06  10000.0  ...              NaN    NaN
1  2009.06  10100.0  ...    NÃO SE APLICA      .
2  2009.06  10101.0  ...               M2   0.46
3  2009.06  10102.0  ...               UN  15.15
我想将其转换为日期格式
%Y%m

应用代码

df['DATA'] = pd.to_datetime(df['DATA'], format='%Y.%m')
我明白了

0   1970-01-01 00:00:00.000002009
1   1970-01-01 00:00:00.000002009
2   1970-01-01 00:00:00.000002009
3   1970-01-01 00:00:00.000002009
4   1970-01-01 00:00:00.000002009
Name: DATA, dtype: datetime64[ns]
谢谢你的帮助

添加
astype(str)


首先转换为字符串:

df['DATA'] = pd.to_datetime(df['DATA'].map('{:.2f}'.format), format='%Y.%m')

实际上,
pd.to_datetime
认为自1970年以来浮点值为毫秒。

我想到了这一点,但我认为控制字符串转换的格式更安全:)
df['DATA'] = pd.to_datetime(df['DATA'].map('{:.2f}'.format), format='%Y.%m')