python - 'format' 是 pandas 中 to_datetime 的无效参数吗?

我有如下代码来创建一个'Date'列,其中date values从另一列'Open Time'中解析,其中包含date和time,例如1/1/ 2022 10:40:00

代码如下:

# create date column 
df.insert(3,"Date",pd.to_datetime(df["Open Time"]).dt.date, format='%d/%m/%Y')
df["Date"]=pd.to_datetime(df["Date"])

但是,运行时会产生以下错误

TypeError                                 Traceback (most recent call last)
C:\Users\JK\AppData\Local\Temp/ipykernel_11644/253220935.py in <module>
      1 # create date column
----> 2 df.insert(3,"Date",pd.to_datetime(df["Open Time"]).dt.date, format='%d/%m/%Y')
      3 df["Date"]=pd.to_datetime(df["Date"])

TypeError: insert() got an unexpected keyword argument 'format'

我发现没有格式参数,代码可以运行。但是,我的 dates 在输出中变得混乱(第 2 天到第 12 天的 dates 被错误地替换为月份)。因此,我真的很想修复这个错误,看看它是否能解决混乱的日期和月份问题。希望能在这里得到一些建议。谢谢。

回答1

您的 format 参数放错了位置。利用:

df.insert(3, "Date", pd.to_datetime(df["Open Time"], format='%d/%m/%Y').dt.date)

相似文章