【发布时间】:2020-11-23 10:01:18
【问题描述】:
我有一个这样的 df:
customer_id offer_id viewed_withintime completed_withintime
0 389bc3fa690240e798340f5a15918d5c f19421c1d4aa40978ebb69ca19b0e20d True True
1 389bc3fa690240e798340f5a15918d5c f19421c1d4aa40978ebb69ca19b0e20d True False
2 389bc3fa690240e798340f5a15918d5c f19421c1d4aa40978ebb69ca19b0e20d True False
我想创建一个名为offer_succussful的新列,如果viewed_withintime和completed_withintime都是True,那么offer_succussful的值为1,否则为0。
这是我的代码:
# label offer_successful to 1 if an offer is viewed and completed within offer_endtime, if not, set it to 0
offer_success_merge['offer_successful'] = (offer_success_merge['completed_withintime'] == True) and (offer_success_merge['viewed_withintime'] == True)
这会返回错误:
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
谁能帮我看看,不知道如何修改这段代码...提前谢谢。
【问题讨论】:
标签: python pandas boolean series