从 Leaps regsubsets 获取所有模型

2024-01-08

我使用 regsubsets 来搜索模型。是否可以自动创建所有lm从参数选择列表中?

library(leaps)
leaps<-regsubsets(y ~ x1 + x2 + x3, data, nbest=1, method="exhaustive")
summary(leaps)$which
  (Intercept)      x1        x2    x3                                                                                   
1        TRUE   FALSE     FALSE  TRUE                                                                                   
2        TRUE   FALSE      TRUE  TRUE                                                                                   
3        TRUE    TRUE      TRUE  TRUE                                                                                   

现在我会手动做model_1 <- lm(y ~ x3)等等。如何自动将它们放入列表中?


我不知道你为什么想要所有型号的列表。summary and coef方法应该对你很有用。但我会先从纯粹的编程方面回答你的问题,然后再回到这一点。


一个简单的方法是通过reformulate:

reformulate(termlabels, response = NULL, intercept = TRUE)

具体方法如下:

## you are masking `leaps` and `data` function!!
leaps <- regsubsets(y ~ x1 + x2 + x3, data, nbest = 1, method = "exhaustive")
X <- summary(leaps)$which

xvars <- dimnames(X)[[2]][-1]  ## column names (all covariates except intercept)
responsevar <- "y"  ## name of response

lst <- vector("list", dim(X)[1])  ## set up an empty model list

## loop through all rows / model specifications
for (i in 1:dim(X)[1]) {
  id <- X[i, ]
  form <- reformulate(xvars[which(id[-1])], responsevar, id[1])
  lst[[i]] <- lm(form, data)
  }

没有必要*apply解决方案。lm成本高昂,所以for循环根本没有任何开销。


更快的方法是建立一个包含所有协变量的模型矩阵,并动态选择其列(使用assign模型矩阵的属性;当你有因子变量时尤其如此)。然后通过模型拟合.lm.fit。但是,您将很难使用以下原始输出生成模型摘要/预测.lm.fit除非你是线性模型大师,但我认为summary(leaps)应该已经返回您各种有用的统计数据。

leaps:::coef.regsubsets函数是这个的等价物.lm.fit路线。只需执行以下操作:

coef(leaps, 1:dim(X)[1], TRUE)

您将获得所有模型的系数和方差-协方差矩阵。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 Leaps regsubsets 获取所有模型 的相关文章

  • 用于清除工作空间和转储存储的 R 全局函数

    我希望创建一个全局函数来清除我的工作区并转储我的内存 我将我的函数称为 cleaner 并希望它执行以下代码 remove list ls gc 我尝试在全局环境中创建该函数 但是当我运行它时 控制台仅打印该函数的文本 在我要获取的函数文件
  • 在 mac (iMac OSX ) 终端中远程运行脚本(r 脚本)到其他计算机

    我有一个小示例脚本 script p r 如下所示 打算在终端中运行 usr bin Rscript sink output capture txt mn lt mean 1 10 and so on much longer list of
  • R-了解 akima::interp 结果中的 NA 值

    我有以下数据框 ref dat k Intensity Slope 1 0 021467214 33 16 2 0 012444759 33 8 3 0 006079156 33 4 4 0 003792025 33 2 5 0 02276
  • 如何让R使用所有处理器?

    我有一台运行 Windows XP 的四核笔记本电脑 但查看任务管理器 R 似乎一次只使用一个处理器 如何让 R 使用全部四个处理器并加速我的 R 程序 我有一个基本系统 我使用它在 for 循环上并行化我的程序 一旦您了解需要做什么 此方
  • dplyr,do(),从模型中提取参数而不丢失分组变量

    R 帮助中关于 do 的示例略有不同 by cyl lt group by mtcars cyl models lt by cyl gt do mod lm mpg disp data coefficients lt models gt d
  • 如何获得属于五分位数的x?

    我正在大学学习使用 R 进行计量经济学项目 所以请原谅我的笨拙 基本上 使用并给出 一个矩阵 股票价格 行 天 列 公司股票价格 另一个矩阵 市值 行 天 列 公司市值 我必须收集第三个矩阵每天观察的属于市值分布第一五分位数的股票价格 然后
  • R:将 readRDS 应用于 .Rds 文件名的列表对象

    我有几个包含数据帧对象的 Rds 文件 我想对每个文件应用一个函数并将数据帧绑定到单个数据帧中 但是 当我尝试从文件名列表中读取多个 Rds 文件时 我收到错误 FUN X i 中的错误 从连接读取时出错 readRDS 不适用于列表吗 R
  • 在 R 中绘制对数正态概率密度

    我正在尝试在 R 中生成对数正态概率密度图 其中包含 3 个不同的均值对数和标准差对数 我尝试了以下方法 但我的图表太丑了 看起来一点也不好看 x lt seq 0 10 length 100 a lt dlnorm x meanlog 0
  • 从 R 环境中删除对象

    我正在阅读 Hadley 的 Advanced R 在第 8 章中 他说我们可以使用以下方法从环境中删除对象 rm 但是 移除该物体后我仍然可以看到该物体 这是我的代码 e lt new env e a lt 1 e b lt 2 e a
  • 当每个记录都是一个段落并且某些记录有 4 个字段而其他记录有 6 个字段时,如何将文本文件读入 R

    如何读取文本文件 其中每条记录都是一个段落 每个换行符表示单独的字段 复杂的是 有些记录有 4 行 有些记录有 6 行 当字段数量的差异为 1 时 DWin 解决了我的问题 但当字段数量差异为 2 时 一切都崩溃了 你可以有一个在这里看看他
  • 从 R 中的 HTTPS 连接逐行读取

    当创建连接时open r 它允许逐行读取 这对于批量处理大数据流非常有用 例如这个脚本 https gist github com jeroenooms d33a24958d99bb969ac0通过一次读取 100 行来解析相当大的 gzi
  • 仅保留百分比的尾随零

    给出以下示例 library pander tableAbs lt Titanic 1 1 tablePct lt round prop table tableAbs 100 2 table lt cbind tableAbs tableP
  • 为绘图制作 2D 图例 - 双变量分区统计图

    我一直在玩双变量 choropleth 地图 并且一直在如何创建类似于 2d 图例的问题上陷入困境约书亚 史蒂文斯 http www joshuastevens net cartography make a bivariate chorop
  • glmnet 未从 cv.glmnet 收敛 lambda.min

    我跑了20倍cv glmnet套索模型以获得 lambda 的 最佳 值 但是 当我尝试重现结果时glmnet 我收到一个错误 内容如下 Warning messages 1 from glmnet Fortran code error c
  • R:将 JSON 时间格式转换为 POSIX

    我有一个 JSON 字符串 并将其放入数据框中 我能够做到这一点 但我在使用 apply 函数之一将所有时间字符串转换为 POSIX 格式时遇到问题 See here https stackoverflow com questions 90
  • 使用 dplyr::filter 的整洁方式是什么?

    使用下面的函数调用foo c b 输出以内联方式显示 正确的写作方式是什么df gt filter x gt x 我已经包含了一个使用的示例mutate以整洁的风格与之对比filter foo lt function variables x
  • ggplot2、R 中的单条形条形图

    我有以下数据和代码 gt ddf var1 var2 1 aa 73 2 bb 18 3 cc 9 gt gt dput ddf structure list var1 c aa bb cc var2 c 73L 18L 9L Names
  • 具有 dplyr、tidyverse 和 broom 的相关矩阵 - P 值矩阵

    全部 我想使用以下方法从相关矩阵中获取 p 值dplyr 和 或扫帚包 并同时测试多个变量 我知道其他方法 但 dplyr 对我来说似乎更简单 更直观 此外 dplyr 需要关联每个变量以获得特定的 p 值 这使得该过程更容易 更快 我检查
  • R 中的 Websocket

    我设法在 R 中建立到 Mtgox websocket 的连接 规格如下 url https socketio mtgox com mtgox Currency USD https socketio mtgox com mtgox Curr
  • 替换字符串/文本中“从第 n 次到最后一次”出现的单词

    这个问题以前曾被问过 但尚未得到令提问者满意的答案 https stackoverflow com questions 36368712 how to use stringrs replace all function to replace

随机推荐

  • 为什么 NumPy 在一个大矩阵 $M$ 上的减法比将 $M$ 分成较小的矩阵然后进行减法慢?

    我正在编写一些代码 其中有几个矩阵 并且想要从每个矩阵的每一行中减去向量 v 然后对结果执行一些其他操作 由于我正在使用 NumPy 并且希望尽可能地 矢量化 因此我认为可以通过将所有矩阵存储为一个大 串联 矩阵并从中减去 v 来加快运行时
  • 编写一个算法来返回一个数组,使得 1..n 中的每个数字 k 恰好出现两次,并且与其副本相距 k 距离

    这个问题是在一次采访中被问到的 对于给定的整数 n gt 3 返回一个大小为 2n 的数组 使得从 1 到 n 的每个数字 k 恰好出现两次 并且每个数字及其重复项之间的距离等于该数字 函数签名 int buildArray int n 例
  • 单击单个单元格时如何突出显示整个 DataGrid 行?

    我有一个 DataGrid 定义如下 当我单击 DataGrid 中的单元格时 仅该单元格会突出显示 如何更改它以便当我单击单元格时整行突出显示
  • iPhone 连续动画与 setAnimationDelay

    我正在尝试链接动画事件 我正在编写的工作应用程序有多项选择测验 首先 您选择多项选择答案 测验视图逐渐消失 然后标签 正确 或 不正确 淡入然后淡出 最后 测验再次淡出 这些事件由主视图控制器调用和处理 我知道我可以使用 setAnimat
  • IntelliJ IDEA 无法创建 GUI 表单

    据说创建一个新的 GUI 表单应该是一个简单的事情 只需右键单击您的项目 包或 src 文件夹 然后转到 新建 gt GUI 表单 问题是我没有这个选项 我创建了一个 Java 项目 它编译并运行良好 但我在 新建 下得到的唯一选项是 Ja
  • 使用睡眠并选择信号

    我想使用select 函数等待 1 秒 因为我的程序使用信号来控制东西 所以sleep 会提前返回 奇怪的是 当使用select 它也会提前返回 我这样调用 select struct timeval timeout timeout tv
  • 无法在 asp.net mvc 中使用资源文件进行本地化

    我正在开发一个 ASP NET MVC 应用程序 在我的应用程序中 我想添加一个下拉选项 供用户选择语言 我找到了使用 ASP NET MVC 的本地化文章 http www c sharpcorner com UploadFile b8e
  • 两个字符串日期与简单日期格式(如 EEE、MMM dd yyyy)进行比较

    我需要使用 SimpleDateformat 比较两个字符串日期 例如 EE MMM dd yyyy 但是当我比较它时 它只会验证第一个值 EE 仅验证其他月份 日期和年份 不会验证如果有人知道这个问题解决方案 请帮助我解决 并提前感谢所有
  • 为 python 安装 GDAL 时遇到问题

    首先我要说的是 我已经寻找了这个问题的帮助 并浏览了我发现的大量线索 但没有一个有效 或者我无法理解他们所说的要做的事情 一旦这样的线程在这里 通过 pip 安装时 Python GDAL 包缺少头文件 https stackoverflo
  • 如何将范围分配给 ssrs 2012 中的报表变量

    我是 SSRS 2012 的新手 有着使用 BusinessObjects 的悠久背景 因此有时我很难知道如何搜索正确的术语 我有一个这样的报告 其中各部分位于 tablix 中 而总计位于另一个中 这个布局是必需的 或者这会更简单一点 S
  • Swift 的 hash 和 hashValue 之间的区别

    The HashableSwift 中的协议要求您实现一个名为的属性hashValue protocol Hashable Equatable Returns the hash value The hash value is not gua
  • C语言的回文程序

    我的 C 程序是回文 其功能有错误 我的函数不是比较字符串中的 2 个字符 当我输入单个字符时 它会回答回文 但如果是两个或更多字符 则始终不是回文 Code int IntStrlength strlen StrWord int IntC
  • SQL Server TRY...CATCH 与 XACT_STATE

    我对 MSDN 文档有疑问TRY CATCH块 查看这篇文章并向下滚动到示例 C 使用 TRY CATCH 和 XACT STATE http msdn microsoft com en us library ms175976 aspx h
  • 熊猫:删除连续的重复项

    在 pandas 中仅删除连续重复项的最有效方法是什么 drop duplicates 给出 In 3 a pandas Series 1 2 2 3 2 index 1 2 3 4 5 In 4 a drop duplicates Out
  • IE8 中的 CSS 最大宽度

    对于我的输入 可以有classname half or half not placeholder value Firebug 显示两个输入都有一个固定的宽度25em input half input half not placeholder
  • 将 CSS“#”(ID)替换为 .(类)

    我有一个像这样的CSS字符串 xyz color ee2ee2 abc background color FFFFFF border color 1px solid eee def xyz border color 1px solid dd
  • 解决灾难性回溯的工具[重复]

    这个问题在这里已经有答案了 我一般要求提供一种工具或方法来查找正则表达式中导致不受控制的回溯的 热点 我对所有格匹配 否定前瞻断言 原子组等有相当好的掌握 但我面临着一种情况 不清楚我的正则表达式到底错在哪里 有问题的正则表达式是 PCRE
  • 文件搜索索引的算法问题

    有一个问题 我也有解决方案 但我无法理解解决方案 请提供一些示例并提供一些经验 Question 给定一个包含大约 3 亿个社会安全号码 9 位数字 的文件 查找文件中没有的 9 位数字 您拥有无限的驱动器空间 但只有 2MB 的 RAM
  • 如何将 Google One Tap 登录与 django-allauth 集成?

    如何将 Google One Tap 登录体验与 django allauth 集成 django allauth 是集成的 非常适合简单的用户名 密码登录 我拥有 Google OneTap 更好的用户体验 可以识别用户经过身份验证的 G
  • 从 Leaps regsubsets 获取所有模型

    我使用 regsubsets 来搜索模型 是否可以自动创建所有lm从参数选择列表中 library leaps leaps lt regsubsets y x1 x2 x3 data nbest 1 method exhaustive su