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

2024-05-16 21:24:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这样一个日期专栏

    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。在

应用代码

^{pr2}$

我明白了

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]

谢谢你的帮助!在


Tags: 代码namedatadate格式nanvalorun
2条回答

先转换为字符串:

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

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

添加astype(str)

pd.to_datetime(df['DATE'].astype(str), format='%Y.%m')
Out[710]: 
0   2009-06-01
1   2009-06-01
2   2009-06-01
3   2009-06-01
Name: DATE, dtype: datetime64[ns]

相关问题 更多 >