拥有对所有客户的交易数据在过去的10年里,我有一个数据帧DF:Python的大熊猫日期GROUPBY数计算的阈值的第一个实例
Customer_ID | date | year | Dollars
ABC 2017-02-07 2017 456
ABC 2017-03-05 2017 167
ABC 2017-07-13 2017 345
ABC 2017-05-15 2017 406
ABC 2016-12-13 2016 320
ABC 2016-01-03 2016 305
ABC 2016-10-10 2016 456
ABC 2016-05-10 2016 175
ABC 2015-04-07 2015 145
BCD 2017-09-08 2017 155
BCD 2016-10-22 2016 274
BCD 2016-10-19 2016 255
我想补充一个标志,当客户第一次参加一年的第四次访问。
因此,这将是输出:
Customer_ID | date | year | Dollars | Flag
ABC 2017-02-07 2017 456
ABC 2017-03-05 2017 167
ABC 2017-07-13 2017 345
ABC 2017-05-15 2017 406
ABC 2016-12-13 2016 320 X
ABC 2016-01-03 2016 305
ABC 2016-10-10 2016 456
ABC 2016-05-10 2016 175
ABC 2015-04-07 2015 145
BCD 2017-09-08 2017 155
BCD 2016-10-22 2016 274
BCD 2016-10-19 2016 255
我会做一些这样的方式,但它不产生输出需要,我不知道他们的标志在第一时间如何度过第四次访问。
df ['Flag'] = np.where(df[['Customer_ID']].groupby(['year']).agg(['count'])>3, 'X','0')
示例正确吗?我认为'X'应该显示在'2016-12-13' – Wen
正确的 - 谢谢你抓到它(原始数据遍历段落,并且我在错误的地方添加了X) – jeangelj
已修复!很抱歉 – jeangelj