【问题标题】:Is there a way to estimate how long a glm function will take in R?有没有办法估计一个 glm 函数在 R 中需要多长时间?
【发布时间】:2022-01-09 06:04:26
【问题描述】:

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

【问题讨论】:

    标签: r time bigdata logistic-regression


    【解决方案1】:

    将我的 cmets 转换为答案:

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

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

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

    【讨论】:

      猜你喜欢
      • 2012-07-06
      • 1970-01-01
      • 2017-06-06
      • 1970-01-01
      • 1970-01-01
      • 2018-04-16
      • 2011-11-03
      • 2012-04-25
      • 1970-01-01
      相关资源
      最近更新 更多