随机森林生存分析崩溃

时间:2018-11-28 16:37:24

标签: r random-forest survival-analysis

我正在尝试在具有59个变量的6500条记录数据帧上运行RFSRC:

rfsrc_test <- rfsrc(Surv(TIME, DIED) ~ ., data=test, nsplit=10, na.action = "na.impute")

当我在1500条记录上运行时它似乎可以工作,但是在整个数据集上崩溃。
它使R崩溃而没有任何特定错误-有时会出现“异常处理错误”。
有什么想法如何调试这个吗?我在数据库中浏览了一些奇怪的行,但是没有任何运气。

2 个答案:

答案 0 :(得分:0)

我们不知道每个记录的大小,也不知道变量的复杂性。

当我达到RAM开销时,我遇到了类似的情况。 R不是为海量数据集设计的。并行处理可以解决这个问题,但是R不是为此设计的,下一个建议是购买更多的RAM。

我的方法是减少变量的数量,直到您可以处理6500条记录(以确保其只是数据集的大小)为止。然后我会预先筛选每个变量的适用性,例如GLM和使用可解释大量数据并最大程度减少残差的变量。然后,我将在减少的变量上重新运行生存分析。

答案 1 :(得分:0)

您可以检查的一件事是时间变量-存在多少个不同的值?生存森林将为每个节点保存累积危害函数。如果数据集中唯一时间点的数量大于CHFS的增长范围,那么也必须四舍五入我的时间变量,这会大大减少运行时间。