【问题标题】:Choose from many variables to write a model [duplicate]从许多变量中选择来编写模型[重复]
【发布时间】:2018-06-29 20:57:40
【问题描述】:

我有一个包含超过 1000 万条条目的大数据。

我想对其进行任何我想做的分析,因此我决定专注于某个国家/地区的家庭的一部分人口。所以现在我有大约 150,000 个条目。现在我有 26 个变量,想对数据运行逻辑回归模型,但 R 说

错误:无法分配大小为 130.3 Gb 的向量

我假设是因为我的变量太多了。我尝试搜索如何为您的模型选择变量,但像 step 这样的函数需要您拥有完整的模型,所以我不确定如何继续。

我是否应该消除我认为不会影响我的响应变量的变量,还是我的数据集仍然太大?

【问题讨论】:

  • 你能分享一些你的代码和数据吗? 150.000 行 26 列不一定会产生大小为 130GB 的向量。
  • 什么会导致该错误?我无法透露数据,但我运行的代码是模型
  • @Becky 您是否将分类变量转换为虚拟变量?如果是这样,请检查/消除那些具有大量级别的。
  • 如果您坚持以这种方式拟合您的逻辑模型,那么biglm 可能会成功。
  • @Prometheus 我想这会导致我的后续问题,所以我的变量之一是他们想要预订的国家/地区,因此有超过 220 个级别,但我会考虑他们想要去哪里book at 作为一个重要变量,我应该还是不应该包括它?

标签: r variables memory-management logistic-regression


【解决方案1】:

如果您能提供更多信息,那就太好了。不过……

除非您对数据非常熟悉,否则您应该做的第一步是执行探索性数据分析More info here

我假设您遇到了监督学习问题。在这种情况下,您可以根据不同的变量绘制标记的结果。见下图。

根据泰坦尼克号灾难中的生存结果,您在图像上看到的是一个变量的分布 - 家庭规模。

当您重复此步骤时,您将更好地了解哪些变量包含与预测更相关的信息。

不久之后,您还会意识到您可能需要根据原始数据构建自己的变量/列。这是一个称为特征工程的过程。

只有在这之后,我想你才会遇到使用更高级的统计方法进行特征选择的问题。在这种情况下,caret 包将非常方便。

有关机器学习的更详细介绍,我建议您访问 www.kaggle.com

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-20
    • 1970-01-01
    • 2015-05-24
    • 1970-01-01
    • 1970-01-01
    • 2016-07-01
    • 2023-04-07
    相关资源
    最近更新 更多