在购买之前查找该用户的购买价格

时间:2019-06-18 18:49:47

标签: python pandas

问题正在寻找该用户在购买之前的平均购买价格。找到倒数第二次购买用户的最佳方法是什么?

我想做到没有循环。建议我可以通过合并和过滤器解决此问题。我不太确定从哪里开始。

数据:

userid  date       price
001     01-01-19   20
001     01-03-19   40
001     01-05-19   50
002     01-05-19   30
002     01-07-19   20
003     01-09-19   20
003     01-01-19   80
003     01-02-19   70
003     01-03-19   20

1 个答案:

答案 0 :(得分:0)

我认为您可能需要expanding.mean

df.groupby('userid').price.expanding().mean()


Out[447]:
userid
1       0    20.000000
        1    30.000000
        2    36.666667
2       3    30.000000
        4    25.000000
3       5    20.000000
        6    50.000000
        7    56.666667
        8    47.500000
Name: price, dtype: float64