Python pandas过滤了交叉表

时间:2017-08-02 18:11:45

标签: python pandas filter crosstab

使用数据框df:

Customer_ID | Transaction_ ID | Store_nr | Store_type | dollars 
ABC           1234              1          Retail       567
ABC           4567              2          Digital      893
ABC           6789              2          Digital      189
ABC           3456              4          Retail       908
XYZ           2345              3          Digital      893
XYZ           5678              1          Retail       792
XYZ           7890              2          Digital      145

我想创建一个交叉表,用于统计零售店和数字商店之间唯一的客户。

这是我要找的输出:

                Digital Digital
       Store nr    2     3
Retail     1       2     1   
Retail     4       1     0

所以你会读到上面的内容,有2个人在商店1和2购物;有一个人在商店4和2购物,一个人在1和3购物。没有人在4和3购物。

我意识到我应该使用python的交叉表函数http://pandas.pydata.org/pandas-docs/version/0.17.0/generated/pandas.crosstab.html

但我不知道如何过滤Store_type = Retail的垂直边和Store_type = Digital的水平边。

我在考虑使用枢轴代替,但我遇到了同样的问题。

谢谢!

0 个答案:

没有答案