基于列表熊猫python更改列值

安妮特·路易斯

我希望在 2018 年的订单数据中跟踪 2019 年将流失的客户,以便我可以进行一些分析,例如客户来自哪里,如果与不会流失的客户相比,他们的订单规模一直在减少.

2018 年的订单数据是一个名为“order_data”的 Pandas df,我有一个将在 2019 年流失的客户列表,名为“churn_customers_2019”。在 order_data 中有一个名为 Customer_id 的列。该列表还填充了将流失的客户的 Customer_id 名称。

但是我的逻辑运行得不好。

order_data['churn in 2019?'] = str('N')

for x in order_data['Customer_id']:
    if x in churn_customers_2019:
        order_data['churn in 2019?'][x] = 'Y'

如果我运行这段代码,一切都会变成 N 而不是也有一些 Y。只有大约 10% 的客户流失。

希瓦姆·罗伊

我会建议使用np.whereISIN你的问题,同样:

order_data['churn in 2019?'] = np.where(order_data['Customer_id'].isin(churn_customers_2019), 'Y', 'N')

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章