【问题标题】:Drop the year from "Year-month-date" format in a pandas dataframe在 pandas 数据框中从“年-月-日”格式中删除年份
【发布时间】:2019-09-21 06:34:48
【问题描述】:

我有一个包含许多列的 Pandas 数据框。第一列已将日期列为“年-月-日”,已使用以下方法设置为日期时间类型:

df_all['Date']=pd.to_datetime(df_all['Date'].astype(str),errors='coerce')

数据如下:

0     2008-01-01 00:00:00   100   16250.0
1     2008-01-01 00:00:00   150   13740.0
2     2008-01-01 00:00:00   200   11900.0
3     2008-01-01 00:00:00   250   10460.0

我希望简单地删除年份,以便该列显示“月-日”而不更改与每一行关联的列中的其他数据。

【问题讨论】:

标签: python pandas dataframe datetime


【解决方案1】:

如果df_all['Date'] 是字符串数据类型,那么您可以使用带切片的 str 访问器,如下所示:

df['Date'] = df_all['Date'].str[5:]

但是,如果 df_all['Date'] 是 datetime dtype,那么您可以使用 strfttime 来访问日期:

df_all['Date'] = df_all['Date'].dt.strftime('%m-%d %H:%M:%S')

输出:

             Date    A        B
0  01-01 00:00:00  100  16250.0
1  01-01 00:00:00  150  13740.0
2  01-01 00:00:00  200  11900.0
3  01-01 00:00:00  250  10460.0

【讨论】:

    猜你喜欢
    • 2020-11-21
    • 1970-01-01
    • 2015-02-03
    • 1970-01-01
    • 1970-01-01
    • 2021-02-17
    • 2015-04-29
    • 2020-01-08
    • 2017-06-14
    相关资源
    最近更新 更多