问题标签 [lifetimes-python]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
210 浏览

python - AttributeError: 'DataFrame' 对象在运行 summary_data_from_transaction_data() 后没有属性 'ix'

我有一个表“df”,其中包含以下变量和样本值:

MSISDN TXN_DATE DISBURSED_AMT
1.0 2020-09-21 10000.00
1.0 2020-11-03 10000.00
2.0 2020-11-06 10000.00
2.0 2020-10-22 6500.00
2.0 2020-09-21 15900.00
2.0 2020-09-08 15000.00
3.0 2020-11-18 100.00
3.0 2020-10-28 10000.00
4.0 2020-10-28 2000.00
4.0 2020-09-29 5000.00

我正在尝试运行以下查询:

但是我得到的输出如下所示,我真的无法解决问题所在,请协助。

0 投票
0 回答
27 浏览

python-3.x - Python错误“AttributeError:模块'scipy.misc'没有属性'logsumexp'”

我正在尝试使用生命周期包来查找使用 python 3.0 笔记本设置的客户生命周期价值。我收到错误 AttributeError: module 'scipy.misc' has no attribute 'logsumexp' 。

我尝试使用 from scipy.special import logsumexp 而不是来自 misc 包。但我仍然得到同样的错误。在此更改之后,我什至现在都没有导入 misc。

还有其他方法可以解决这个问题吗?

0 投票
1 回答
59 浏览

numpy-ufunc - 生命周期库 - 使用函数时计算 CLV 的问题:GammaGammaFitter 的 customer_lifetime_value

我正在尝试使用lifetimespython 库计算 CLV(客户生活价值)

所以,我正在拟合购买行为数据ParetoNBDFitter和拟合购买价格数据GammaGammaFitter

并且当我尝试基于 计算 CLV 时GammaGammaFitter.customer_lifetime_value(),关于

有趣的是,我昨天可以成功计算 CLV,但今天出现了上述错误。代码和数据没有被修改。

我的代码按日期循环,每次我重新定义模型然后计算 CLV。

在此处输入图像描述

0 投票
0 回答
14 浏览

python - 优化 Lifetime 的 BG/NBD fitter 的执行

阅读文档和 Lifetimes 的特定装配工

我有一个约 166K 客户(行)的数据集,这些数据集采用模型适应所需的新近度、频率和 T 格式。我使用以下代码,类似于快速入门部分中概述的代码:

我的目标是缩短健身时间。对于上下文,我正在运行多次拟合此模型的模拟。这里多次表示,如果可以的话,~ 720 * 10,000。那是很多时间。即使在保守的水平(~ 180 * 100),这仍然需要半天时间。

在模型拟合后,我确实有大约 3 个其他功能可以运行。设法矢量化一个,现在它们都运行低于/大约 0.04 秒。该模型的拟合是运行时间的最大贡献者。

所以,我想这里的一般问题是如何优化开箱即用的装配工?我怀疑这是可能的,但不确定。

我是这个领域的新手,充其量是一个体面的编码器/开发人员。我可以在需要的地方添加更多上下文,但认为上述内容已经足够合适了。欢迎提供建议、指导和有用的评论!谢谢!

0 投票
0 回答
19 浏览

python - Python 生命周期包可扩展性超过 10-2000 万个交易数据

我需要构建一个调用lifetimespython 包的 Java/Python 管道来每天计算客户生命周期价值。

目前我们大约有 10-2000 万行交易数据。我想知道在处理这么多数据时,生命周期包的可扩展性如何?

如果扩展性不够,如何与 Apache Crunch 集成并行计算?谢谢!

0 投票
1 回答
66 浏览

python - 在单个行上迭代一个函数,直到满足条件,然后移动到下一行

我正在使用生命周期库来构建客户生命周期价值模型。该库附带一个名为的方法,该方法conditional_expected_number_of_purchases_up_to_time允许您预测数据集中每个客户在指定时间段内的购买情况。

这是我正在使用的数据框:

数据框中的每一行代表一个单独的客户。为了预测每个客户在接下来的 4 个时期内的预期购买次数,我将执行以下代码:

我现在想要做的是,对于数据框中的每一行,在他们的余生中估计剩余购买的总数。我们将此数量称为剩余客户购买量 (RCP)。

为此,我定义了两个函数:第一个函数计算两个时间段之间的 RCP 增量,第二个函数通过递增来近似总 RCP,t直到增量 RCP 低于特定容差水平:

第一个功能按预期工作。但是当我尝试执行第二个函数(approximate)时,我收到了这个错误:

ValueError:Series 的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。

我希望近似函数迭代单行的 RCP 函数,直到 RCP 值不再增加,并对数据帧中的每一行逐一执行此操作。

我做错了什么,我应该怎么做?