【问题标题】:dt.date returns AttributeError: Can only use .dt accessor with datetimelike valuesdt.date 返回 AttributeError: Can only use .dt accessor with datetimelike values
【发布时间】:2020-06-05 02:20:27
【问题描述】:

我尝试使用 pd.to_datetime() 的列中的所有值都类似于 2017-10-02 10:56:33

所以我运行了下面的代码


order_time['order_purchase_timestamp'] = pd.to_datetime(order_time['order_purchase_timestamp'], errors='coerce')
order_time['order_develiered_customer_date'] = pd.to_datetime(order_time['order_delivered_customer_date'], errors='coerce')

然后我试着做

order_time['date_order'] = order_time['order_purchase_timestamp'].dt.date
order_time['date_delivered'] = order_time['order_delivered_customer_date'].dt.date

返回“AttributeError: Can only use .dt accessor with datetimelike values”

我检查了数据类型,他们是

dtype('<M8[ns]')

我不知道这里有什么问题。

【问题讨论】:

  • 数据是什么样的?
  • 我们需要可重现的代码,拜托
  • 我创建了一个新的数据框,它只包含订单日期和交货日期,它们看起来与不同的值相同,并且评论分数只是从 1 到 5 的数字。有 100000 行 x 4 列。跨度>
  • 你能从这个数据框中添加前几行(5 或 10)吗?

标签: python pandas attributeerror


【解决方案1】:

你的目标是什么? 你在找这个吗?

order_time['date_order'] = order_time['order_purchase_timestamp'].dt.strftime('%Y/%m/%d')

Python's strftime directives

【讨论】:

  • 我的目标是获得交货所需的天数,因此我试图先获得日期。
  • 我猜您的数据或上面的某些代码有问题。请注意,在此之前您仍然需要应用“order_time['order_purchase_timestamp'] = pd.to_datetime(order_time['order_purchase_timestamp'], errors='coerce')”。
【解决方案2】:

你正在做的应该有效,我复制了你的例子:

df:

order_purchase_timestamp
2017-10-02 10:56:33
2017-10-02 10:56:33
2017-10-02 10:56:33
123
2017-10-02 10:56:33

代码:

df['order_purchase_timestamp'] = pd.to_datetime(df['order_purchase_timestamp'], errors='coerce')
df['date_order'] = df['order_purchase_timestamp'].dt.date
print(df)


  order_purchase_timestamp  date_order
0      2017-10-02 10:56:33  2017-10-02
1      2017-10-02 10:56:33  2017-10-02
2      2017-10-02 10:56:33  2017-10-02
3                      NaT         NaT
4      2017-10-02 10:56:33  2017-10-02

数据有问题,如果您可以粘贴示例会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-26
    • 2022-01-01
    • 1970-01-01
    • 2022-12-01
    相关资源
    最近更新 更多