gpt4 book ai didi

python - 从系列中删除分钟和小时

转载 作者:太空狗 更新时间:2023-10-30 01:11:26 25 4
gpt4 key购买 nike

早上好

我有以下数据框(年、月、日、小时、秒):

print(df)

Date Price
2018-01-02 09:42:00 2
2018-01-02 09:46:00 4
2018-01-02 10:22:00 6
...

我想得到,没有分秒:

print(final_df)

Date Price
2018-01-02 2
2018-01-02 4
2018-01-02 6
...

我试过:

df['Date'] = datetime.datetime.strptime(df['Date'], '%Y-%m-%d').date()

但它报告“strptime() argument 1 must be str, not Series”

最佳答案

如果不是日期时间列需要to_datetimedt.date :

print (df.dtypes)
Date object
Price int64
dtype: object

df['Date'] = pd.to_datetime(df['Date']).dt.date

print (df.dtypes)
Date object
Price int64
dtype: object

print (df['Date'].head().apply(type))
0 <class 'datetime.date'>
1 <class 'datetime.date'>
2 <class 'datetime.date'>
Name: Date, dtype: object

或者,如果需要没有小时分钟的日期时间,请使用dt.floor :

df['Date'] = pd.to_datetime(df['Date']).dt.floor('d')

print (df.dtypes)
Date datetime64[ns]
Price int64
dtype: object

print (df['Date'].head().apply(type))
0 <class 'pandas._libs.tslibs.timestamps.Timesta...
1 <class 'pandas._libs.tslibs.timestamps.Timesta...
2 <class 'pandas._libs.tslibs.timestamps.Timesta...
Name: Date, dtype: object

如果日期时间列:

print (df.dtypes)
Date datetime64[ns]
Price int64
dtype: object


df['Date'] = df['Date'].dt.date

df['Date'] = df['Date'].dt.floor('d')

关于python - 从系列中删除分钟和小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50503033/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com