问题标签 [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 投票
1 回答
234 浏览

python - Python 中 PALIVE 的语法类似于 R 中的 pnbd.PAlive?

谁能帮我计算 PALIVE(在校准期结束时他们仍然活着的概率。)在 Python 中?

我知道 R 有一个帕累托负二项分布函数 pnbd.PAlive(params, r, s, apha, beta) ,但在 Python 中有什么相似之处?

0 投票
1 回答
1757 浏览

python - 如何使用 Python 中的生命周期包获得客户生命周期的期望值

python 包生命周期使用与 R 包 BTYD 相同的 BG/NBD 方法。

在 R 论文中,我们可以估计给定时间范围内任何新获得的客户的客户生命周期 (CLV) 包。但是,我无法在 python 中找到等效的函数。

似乎我能找到的所有信息都是以过去的频率和新近度作为条件概率来估计 CLV。有没有人有这方面的经验?

0 投票
1 回答
466 浏览

python-3.x - 校准和保持数据:AttributeError:“int”对象没有属性“n”

我正在尝试使用生命周期库运行 BG/NBD 模型。我所有的分析都基于以下示例,但使用了我自己的数据: https ://towardsdatascience.com/whats-a-customer-worth-8daf183f8a4f

不知何故,我收到以下错误,在阅读了 50 多篇 stackoverflow 文章但没有找到任何答案后,我想问自己的问题:我做错了什么?:(

提前致谢!:)

我试图更改属于我的数据框的所有列的类型,而不进行任何更改。

0 投票
2 回答
2031 浏览

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

我正在尝试使用生命周期标头从给定数据创建新近度、频率和 T,但它一直显示以下错误 AttributeError: module 'scipy.misc' has no attribute 'logsumexp'

收到以下输出:

SciPy 的版本是 1.3.0 代码应该生成一个表格,其中包含每个客户的 Recency、Frequency 和 T

0 投票
2 回答
1305 浏览

python-3.x - 无法在生命周期内导入估计模块

我正在尝试分析客户购物数据,我正在尝试使用 Python 中的生命周期包。我无法在生命周期内导入估计模块

ModuleNotFoundError:没有名为“lifetimes.estimation”的模块

0 投票
1 回答
241 浏览

python - TypeError:float() 参数必须是字符串或数字,而不是“Day”

我一直收到错误:

TypeError:float() 参数必须是字符串或数字,而不是“Day”。

有谁知道我该如何解决这个问题?

https://lifetimes.readthedocs.io/en/latest/Quickstart.html

0 投票
0 回答
116 浏览

python - Pydata Seattle - 在 Python 中实施和训练预测性客户生命周期价值模型

有人可以指点我在 Python 中实现和训练预测性客户终身价值模型的 PyData 西雅图笔记本吗?似乎 oracle 购买了 datascience.com,现在提供的 Github 链接上不再提供该笔记本。

0 投票
1 回答
403 浏览

python - Lifetimes 包给出不一致的结果

Lifetimes用来计算我的一些客户的 CLV。我有交易数据,并且通过summary_data_from_transaction_data(可以在此处找到实现)我想计算每个客户的新近度频率和时间间隔T。不幸的是,该方法似乎无法正确计算频率
这是测试我的数据集的代码:

根据代码,结果是:

问题是客户1188564和客户1171970分别进行了 69 次和 14 次交易,因此频率应该是 68 次和 13 次。打印每个客户的大小确认:

我确实尝试过summary_data_from_transaction_data像这样在本地使用底层代码:

如您所见,结果确实是正确的。

当然,我的数据集要大得多,而且我的频率和/或新近度的微小差异会极大地改变 BGF 模型的计算。

我错过了什么?使用该方法时有什么需要考虑的吗?

0 投票
1 回答
82 浏览

python - Lifetimes 包:float() 参数必须是字符串或数字,而不是“Day”

使用 Lifestyles python 包中包含的 summary_data_from_transaction_data 实用程序函数时出现以下错误。在 Google Colab 上使用 pandas 0.2 版。

TypeError:float() 参数必须是字符串或数字,而不是“Day”

任何帮助都感激不尽。

代码:

堆栈跟踪:

data_final df 中的示例数据和相关的 dtypes 是按照附件。

样本数据

数据类型

谢谢你的帮助。

0 投票
1 回答
280 浏览

python - 使用 Spark/Python 使用 Lifetimes python 包计算指标[对象没有属性'sort_values']

我在我的 spark 集群中使用 Lifetimes python 包并尝试计算一些指标——Lifetimes 包

我一直在使用火花 2.4.2。我有如下示例的数据框(原始数据有 800K 记录),包含“invoce_date”列和其他一些列(id、label、county 等)

在这里,我试图利用 Lifetimes

这会返回一个错误'DataFrame' object has no attribute 'sort_values',我 df = df.sort("invoce_date")在度量计算之前添加了但仍然不断收到相同的错误,我无法弄清楚

这是我的数据类型供参考