每行和日期/时间重叠的多状态(mstate)数据准备(使用R或Python)?

时间:2018-07-23 12:28:05

标签: python r function lapply

我正在研究R中的多状态问题。我想使用mstate包,但是在使用此包之前,我必须计算每个状态下的时间。为此,我想使用R或Python。对此准备挑战最方便的方法。

Table1包含我现在拥有的原始数据的样本。它包含有关3个客户的信息,这些客户可以订阅4种未订购产品的选择。数据将采用每条记录至少2个开始日期相等的格式。因此,参与此分析的所有客户的初始“状态”将处于“ MultiProduct”中。我想计算以下三个“状态”中每个状态的天数:

  1. MultiProduct:开始状态以及以天为单位的计时器开始时间。
  2. MultiToSingle:当客户退回一种单一产品时。
  3. 客户流失:当客户退货到零产品时,即总流失。

Table2包含我想要实现的结果。请注意,如果客户未访问状态MultiToSingleChurn和/或Churn,则Censor列(以.s结尾)将保持为零。这是ID为1的客户的结果,不会经过状态MultiToSingleChurn和Churn。计时器将在Today()-StartDate停止。今天是2018-07-23,因此该客户的计时器停止在203天。我假设使用一个无环图,所以我不必考虑客户可能会从例如MultiToSingle到MultiProduct返回。

n = int(input())
l = []
for i in range(n):
    l.append(list(map(int, input().rstrip().split(" "))))

0 个答案:

没有答案