问题标签 [churn]

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 回答
680 浏览

python - Python:对具有大量变量的月度数据进行聚类分析

我希望你们能帮我解决这个问题,因为我觉得这超出了我的范围。对你们中的一些人来说这可能很愚蠢,但我迷路了,我来找你们寻求建议。

我是统计、数据分析和大数据的新手。我刚开始学习,我需要做一个关于流失预测的项目。是的,这是一项家庭作业,但我希望你能回答我的一些问题。

我将非常感谢一步一步的初学者级答案。

基本上,我有一个非常大的数据集(显然)来自蜂窝公司的 3 个月的客户活动数据,第 4 个月以流失或未流失结束。每个月都有这些列:

本作业的最终结果将是 k-means 聚类分析和流失预测模型。

关于这个数据集,我最头疼的是:

如何对包含大部分这些变量的月度数据进行聚类分析?我试图寻找一个例子,但我找到了一个每月分析一个变量或每月分析多个变量的例子。

我正在使用 Python 和 Spark。

我想只要我知道如何处理几个月和一大堆变量,我就可以让它发挥作用。

谢谢,您的帮助将不胜感激!

PS 一个代码示例会不会问太多?

0 投票
1 回答
416 浏览

analysis - 德鲁伊队列分析?

我们收集有关我们网站流量的数据,这导致每天约有 5 万到 10 万次独立访问。

队列分析:

找出 24 小时内在网站上注册然后实际进入我们的购买页面的用户百分比(计算在注册后的第一、第二、第三等小时内有多少用户这样做的百分比)。

两个非常简短的示例文档:

  • sessionId:我们用于执行计数的唯一标识符
  • url:用于评估同类群组的 url
  • 时间:事件的Unix时间戳

{ "sessionId": "some-random-id", "time": 1428238800000, (unix timestamp: Apr 5th, 3:00 pm) "url": "/register" }

{ "sessionId": "some-random-id", "time": 1428241500000, (unix timestamp: Apr 5th, 3:45 pm) "url": "/buy" }

如果我想在 6 个月内进行相同的聚合,并且想检查回访客户的执行群组?数据集太庞大了。

附带说明:我也对获得 100% 准确的结果不感兴趣,近似值足以进行趋势分析。

我们可以用 Druid 实现这一点吗?还是不适合这种分析?还有什么比做队列分析更好的吗?

0 投票
1 回答
197 浏览

sql - 计算特定时期的客户活动(例如:7 天)

我已经设法使用 CTE 计算客户是否在每月期间活跃,而在下一个期间(流失)不活跃。到目前为止,这已被证明是非常简单的。我曾经这样做的代码片段(对于其他四处寻找如何做到这一点的人)如下。我的dwh.marts.fact_customer_kpi表有代表客户的记录active,这意味着他/她已经花了一些钱使用服务。

但是,现在我想知道 Redshift 中是否有一种有效的方法可以根据特定日期计算周期。例如,根据客户注册后的 7 天时间段计算上述相同值,而不是按月计算。

我的查询中所需的更改将在monthly_usage. 我试过使用- interval '7 days'但到目前为止没有成功,或者我错过了一些东西。

谁能指出我所缺少的东西(最好举个例子),或者需要进行哪些更改?

我正在使用 Amazon Redshift。

0 投票
0 回答
122 浏览

configuration - 使用具有不同流失生成器类型的 Oversim SimpleUnderlay 网络

我正在使用SimpleUnderlay.ned网络Oversim20121206OMNet++ ver 4.6实现分层覆盖网络(2层)。在配置(.ini)文件中,我使用了以下(示例):

尝试在*.ini文件中分配某些参数时,出现以下错误

来自 Omnet IDE 的屏幕截图,显示了 <code>

错误是“`未知的每个对象配置。[参数名称]。

对于需要为具有不同流失配置文件的节点分配参数的配置文件,是否有任何建议?有什么建议吗?

谢谢你的帮助

0 投票
1 回答
813 浏览

python - LDA(n_components = 2) + fit_transform 返回 1-dim 矩阵而不是 2-dim

在我的 Churn_Modelling.csv 文件上应用一些 LDA 时,一切都很顺利,直到我的 X_train 返回 (8000, 1) 除了 (8000, 2) 如预期的那样:

X_train 预先进行了“热编码”和“特征缩放”,如下所示:

在对其他 .csv 文件执行相同操作时,我没有遇到任何问题……您知道为什么吗?

非常感谢您的帮助!

0 投票
0 回答
175 浏览

r - R中的BTYD添加(列表/向量类型匹配)

我正在研究搅拌的预测模型。因此,我们决定开始使用 NBD/Pareto(BTYD 包,在 R 中)。

我认为错误是由于数据兼容性或者可能是由于我尚无法理解的其他原因造成的。

首先,我从https://gist.github.com/mattbaggott/5113177运行并查看了存储库, 他们在这里使用模型并获得非常有趣的 ggplots,然后他们使用他们的数据制作模型。

在他们使用EstimateParameters函数的指令中,他们正确地获得了结果,并根据模型使用了一些东西。

在示例中运行 pnbd.EstimatesModel 函数之后。

因此,我添加了我的数据,以便我们可以使用该包。我先手工制作自己的 CBS 矩阵,然后进行转换,然后执行指令。但是,我遇到了同样的错误,从字面上看

“优化错误(logparams,pnbd.eLL,cal.cbs = cal.cbs,max.param.value = max.param.value,:L-BFGS-B 需要 'fn' 的有限值另外:警告消息:在 log(1 - ((maxab + tx)/(maxab + T.cal))^(r + s + x)) 中:产生的 NaNs"

我的改编中引发的错误

我必须告诉你,我一直在尝试解决它一个星期,并在其他问题中看到同样的错误,但我无法解决它。我寻找 NA 和无限,试图改变数据类型......但没有。

有人能告诉我发生了什么吗?

0 投票
1 回答
70 浏览

sql - postgresql - 累积。按月汇总活跃客户(去除流失)

我想创建一个查询来按月获取我们活跃客户的累积总和。这里的棘手之处在于(不幸的是)一些客户流失了,所以我需要在他们离开我们的当月将他们从累积金额中删除。

这是我的客户表的示例:

这是我想要实现的目标:

我已经设法通过以下查询实现了它......但是,我想知道是否有更好的方法。

0 投票
1 回答
76 浏览

prediction - 预测和时间序列

如何决定我的预测有多提前?

我正在关注功能工具流失教程 https://github.com/Featuretools/predict-customer-churn

我不太明白它是如何决定提前一个月预测的。在我尝试过的之前的流失示例中,我只是得到汇总数据(它可能是一年或几个月的历史数据)然后我建立流失模型并预测,但我不知道我的预测是一年一个月还是提前多少天,这是如何决定的!它是否取决于聚合时间或我没有使用的数据。我知道截止时间是我要进行预测的时间,但是我如何告诉系统我要提前 2 个月进行预测我只是通过设置截止时间而忽略过去两个月的数据,但提供标签两个月后,说我的模型基于我得到的功能是一个 2 个月的高级预测。

例如。截止日期是 2010 年 1 月 8 日标签是 2010 年 1 月 10 日的客户状态,所以两个月的时间是提前预测吗?我使用了截止时间之前的所有历史数据?

这可能是一个时间序列问题,它变成了一个简单的分类,但我不确定!

0 投票
1 回答
180 浏览

sql - SQL - 试图通过他们的购物渠道找到客户

您好,我正在寻找只在网上购物和只在店内购物的客户以及同时在网上和实体店购物的客户。因此,当我将它们加起来时,它们应该等于我的总客户数。

我正在尝试通过他们的购物渠道找到新的和回头客。我需要一个 sql 来给我所有在商店购物的新客户和回头客,然后在一个单独的表中,所有仅在网上购物的新/回头客户,然后是在网上和商店购物的人(交叉顾客)。因此,当我将它们加在一起时,它们应该等于我在每个类别中的总客户数(新客户和回头客)。它应该如下所示:

数据应该是什么样子

我也创建了一个示例数据库。我还试图通过新客户和回头客以及后来的年龄范围来打破客户。

https://dbfiddle.uk/?rdbms=oracle_11.2&fiddle=96a7b85c8ca0da7f7c40f20205964d9b

这些是我尝试过的一些查询: 下面是一个向我展示了只在网上买过树枝的新客户和回头客的查询:

并找到购买表单 POS 的新老客户如下:

我正在努力寻找在网上和 POS 购物的新老客户。请帮忙 !

0 投票
1 回答
209 浏览

sql - 合同开始和结束日期的流失率

我正在尝试计算客户的流失率,而我所要做的就是合同开始和结束日期。

当日期年份为 9999 时,仅表示他们仍然是客户,我只想考虑任期超过 3 个月的帐户(如在公司工作 3 个月或更长时间)。