我期待创建一个日期的新行与以下格式:
2022-07-20 0:00:00
所以基本上,今天的日期和时间为h:mm:ss
,都为0
我试图使用pd.to_datetime('today')
,但时间是我的当前时间,而不是 0。我也尝试使用相同的代码,但与.normalize()
,然后我的时间消失,只有日期仍然存在。
有没有办法做到这一点?
如果您的数据框是 df,请尝试:
from datetime import datetime
df['time'] = datetime.(year= ..., month= ..., day= ...)
我认为在大多数情况下,这真的取决于你喜欢什么,或者什么最适合你的用例。
from datetime import datetime, date
datetime.now().replace(hour=0, minute=0, second=0, microsecond=0)
datetime.fromordinal(date.today().toordinal())
datetime.combine(date.today(), datetime.time(datetime.min))
>>> datetime.datetime(2022, 7, 20, 0, 0)
>>> datetime.datetime(2022, 7, 20, 0, 0)
>>> datetime.datetime(2022, 7, 20, 0, 0)
也许我误解了,但这是你想要的吗?
import pandas as pd
dtrng = pd.date_range('2022-07-01', periods=31, freq='D')
df = pd.DataFrame({'Date' : dtrng})
df['DateTime'] = df.Date.dt.strftime('%Y-%m-%d %H:%M:%S')
df['DateHMSutc'] = pd.to_datetime(df['Date'], format='%Y-%m-%d %H:%M:%S', utc=True)
df.head()
Date DateTime DateHMSutc
0 2022-07-01 2022-07-01 00:00:00 2022-07-01 00:00:00+00:00
1 2022-07-02 2022-07-02 00:00:00 2022-07-02 00:00:00+00:00
2 2022-07-03 2022-07-03 00:00:00 2022-07-03 00:00:00+00:00
3 2022-07-04 2022-07-04 00:00:00 2022-07-04 00:00:00+00:00
4 2022-07-05 2022-07-05 00:00:00 2022-07-05 00:00:00+00:00
df.dtypes
Date datetime64[ns]
DateTime object
DateHMSutc datetime64[ns, UTC]
dtype: object
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(76条)