欢迎任何有关此问题更准确标题的帮助..
我有一个pandas
包含客户级别观察的数据框,记录日期以及客户在该日期消费的项目。它看起来像这样。
df
store day items
a 1 4
a 1 3
a 2 1
a 3 5
a 4 2
a 5 9
b 1 1
b 2 3
该数据集中的每个观察结果都与一个独特的商店日组合有关,但每个商店日观察结果都以消费的正数为条件列出,即df[items] > 0
每个商店日对。
所以我没有,例如
b 3 0
b 4 0
b 5 0
等等
我需要按store
and对这个数据框进行分组day
,然后对每个存储日组中的所有 obs 运行一些操作。
但是,我希望这些行存在并且长度为 0(空集),我不确定执行此操作的最佳方法。这是一个非常简单的玩具数据集。真实的非常大。
我真的不想在使用 之前添加观察结果df.groupby(['store', 'day'])
,因为我对每个商店日组运行其他计算,该计算使用每个组的长度作为在特定商店和日期中记录的客户数量的度量。因此,如果我添加这些观察结果b3
和b4
,那么看起来有 2 位顾客在第 3 天和第 4 天访问了商店 b - 而没有(每个人在第 3 天和第 4 天在商店 b 什么都没买)。