【发布时间】:2018-08-21 12:57:33
【问题描述】:
我有以下数据集:
print(df)
Date Product_Code Quantity_ordered
01/01/18 01 6
02/01/18 04 3
03/01/18 01 4
...
我想创建一个附加列“订单”,使用 Pandas,对于 每个产品 和 day,如果订购的数量等于 1,否则为 0;例如:
print(final_df)
Date Product_Code Order
01/01/18 01 1
01/01/18 04 0
02/01/18 04 1
02/01/18 01 0
03/01/18 01 1
03/01/18 04 0
...
我试过了:
a = pd.date_range(min(df["Date"]), max(df["Date"]))
final_df = pd.merge(df, a, on = ["Date", "Product_Code"])
但是它报错说它不能处理日期时间;此外,我认为这不是最有效的方法,而且我不知道如何创建最终的二进制变量。
问候
【问题讨论】:
-
我知道我的回答迟了,但也请看看替代方案:)。
标签: python python-3.x pandas dataframe subset