我可以使用哪种算法根据历史索赔数据预测来年的逗留时间?

数据挖掘 机器学习
2022-02-28 12:54:29

我有两年的一千名成员的历史健康索赔数据。根据这两年的数据,我必须预测所有成员在第 3 年的住院时间。这是数据样本。

Year MembID x1 x2 x3 x4 x5 x6 x7 LengthOfStay

2010 1 6 35 0 3 0 0 4 1

2010 1 8 35 0 5 0 0 3 0

2009 1 5 35 0 5 0 0 3 3

2009 1 3 35 0 8 2 0 8 0

2010 2 6 30 0 3 3 2 4 0

2010 2 8 30 0 5 0 0 3 0

2009 2 5 30 0 5 0 0 3 0

2010 2 5 30 1 5 0 2 2 0

2009 3 5 55 1 5 1 2 2 0

2010 3 10 55 1 5 0 2 2 0

2010 3 5 55 1 5 1 2 2 0

2009 3 10 55 1 5 0 0 2 0

2010 4 5 24 1 5 0 0 2 0

2009 4 3 24 1 8 0 0 2 0

2009 5 10 65 1 5 1 2 4 5

2009 5 5 65 1 5 0 2 3 0

2010 5 6 65 1 3 0 0 4 1

2010 5 4 65 1 5 0 0 4 0
2010 6 10 44 1 5 1 2 4 5 
2011--- i expect------ 1 

我用随机森林做了分类。我如何才能进一步预测 2011 年?

3个回答

如果您想使用 2011 年的特征进行预测,答案是肯定的,您可以这样做。

但是,由于您不想使用这些功能,因此答案可能是否定的。

如果不使用 2011 年的特征,假设每个样本都memberID不同,您的数据集将只有 2 个样本(2009 年和 2010 年)。从两个样本进行预测既不可靠也不可行。

如果我做对了,

首先,由于您要预测的值(停留天数)是一个连续变量,这是一个典型的回归问题,而不是分类问题,如果您按照sklearn 的流程图,您会找到正确的估计器。

但最重要的是,您必须遵循以下基本步骤:

  1. 了解数据集
    • 数据探索
    • 异常值调查
  2. 优化特征选择/工程
    • 创建新功能(如果需要 - 取决于现有功能)
    • 选择功能
    • 正确缩放特征
  3. 选择和调整算法
    • 选择一个算法
    • 调整算法
  4. 验证和评估

完成上述步骤后,您将拥有一个模型,能够为其提供一系列特征(例如 [4, 5, 24, 1, 5, 0, 0, 2]),它会预测停留天数。(我跳过了这一年,因为我认为这对您的预测没有帮助。您将在第 2 步中找到它)。

如果您想将此作为一个真正的预测模型,您将需要更多信息。您将需要可以预测前几年住院时间的各种因素(性别、年龄、体重等),然后创建一个交叉验证模型来预测每个人在医院的夜晚。从那里您将能够预测未来的年份。

另一方面,如果您没有更多信息,则可以使用泊松分布。但是,我不知道集群的医院之夜(从技术上讲,它们不是单一的)是否符合该分布的标准。