有没有办法估计 glm 函数在 R 中需要多长时间?

Is there a way to estimate how long a glm function will take in R?

我正在尝试使用 R 中的 glm 函数估计 logit,其中我的数据集有大约 40,000 个观察值,并且我正在尝试使用大约 1,800 个水平的因子作为控制。这是一个城市市长候选人的数据集。有什么方法可以估计需要多长时间。我在 10 分钟后停止了它,但我不确定这是否需要几分钟、几小时、几天、几周或更长时间才能完成。有什么方法可以估计需要多长时间?

将我的评论转换为答案:

没有真正预计算时间的方法...这将取决于很多因素,包括您 运行 正在使用的计算机。您可以使用控制参数来设置 trace = TRUE,这将为您提供每次迭代的输出。默认值为最多 25 次迭代。因此,对其进行监控 运行 会让您了解事情的发展速度。

您可以 运行 增加数据子集的模型,以查看其扩展方式。用你的因子的 200 个水平做 5k 行。然后是 10k 行和 400 级,等等。这样做 4 或 5 次应该会给你一个体面的感觉。不要期望时间的增长是线性的...

更好地利用您的时间可能是找到加快估算的方法。有了那么多因子水平,稀疏矩阵肯定会有所帮助。 fastglm 包看起来很不错(尽管我从未使用过)。 This question has several answers with ideas for speeding up glm estimation.