【发布时间】:2018-11-11 06:03:03
【问题描述】:
所以我有一组 50 个日期,例如我在这里指定了 7 个
df["CreatedDate"] = pd.DataFrame('09-08-16 0:00','22-08-16 0:00','23-08-16 0:00',28-08-16 0:00,'29-08-16 0:00','30-08-16 0:00','31-08-16 0:00')
df["CreatedDate"] = pd.to_datetime(df4.CreatedDate)
df4["DAY"] = df4.CreatedDate.dt.day
如何找到形成连续区间 [1-3],[4-7],[8-15],[>=16] 的连续天数
Streak Count
1-3 3 #(9),(22,23) are in range [1-3]
4-7 1 #(28,29,30,31) are in range [4-7]
8-15 0
>=16 0
假设产品(笔)已在 2 年前推出,我们将获取从今天起过去 10 个月的数据集,我想发现的是,如果人们连续 1 或 2 或 3 年购买该笔天,如果是,则将计数放置 [1-3],如果他们连续购买 4 或 5 或 6 或 7 天,我们将计数放置在 [4-7] 中,以此类推其他范围
我不知道要指定哪个条件来匹配条件
【问题讨论】:
-
这与您的其他 question 有什么不同,后者已经有一个很好的答案可以做到这一点?
-
我还没有得到答案。
-
您想要自最早时间戳以来的天数吗?另一个问题也不是很清楚。我的意思是,您想从产品销售的第一天起将您的数据分组?我不明白
9,22,23是怎么在同一个组里的 -
不,我们只是说产品(笔)已在 2 年前推出,我们从今天开始获取过去 10 个月的数据集,我想发现的是,如果人们持续购买那支笔1 天或 2 天或 3 天,如果是,则放置计数 [1-3],如果他们连续购买 4 或 5 或 6 或 7 天,我们将计数放入 [4-7] 等其他范围
-
在 9(仅 1 天)内销售产品,9 天后没有连续天数,并且连续 1 天在 [1-3] 范围内。在 22 和 23 中,产品正在销售(连续 2 天),这也在 [1-3] 范围内
标签: python python-3.x pandas group-by pivot-table