将多个模型的回归系数打印到共享数据框

2023-11-25

我知道这有点初级。基本上,我想将 coef 函数中的保存数据用于模型的共享数据框架,这些模型都从更大的共享数据集中提取有限的可能变量。

我有3套14个模型。每组使用 100 个变量数据集中的 15-25 个变量,每个模型混合使用约 12 个变量,这些变量因模型而异。我想做的是将 14 个模型中每一个模型的系数保存到一个数据帧中。

Coefs=data.frame(col.names = names(EST))

系数看起来像这样:

Coefficients:
                    Estimate   Std. Error  t value           Pr(>|t|)    
RT_SCORE_USER       0.2427506  0.0310486   7.818 0.0000000000000836 ***
VOD.Window..weeks.  0.0092641  0.0009985   9.278            < 2e-16 ***
PX_WK3              0.0300395  0.0098943   3.036           0.002600 ** 

对于 10-15 个变量来说是不错的。例如,PX 有 14 周(第 1 周、第 2 周等)。我想将估计值保存到此网格中,其中每行有 100 列列出所有可能的变量。其中大部分将为 0。该表将导入到 Excel 中,我可以在其中简单地对每周的模型进行交叉乘法。

我的努力是弄清楚如何将各个星期的所有不同系数记录到一个 data.frame 中,其中每个模型都有单独的行:

       PX_WK1     PXWK_2   RT_SCORE_USER  IMAVARIABLE etc.
ESTWK1   .030     0         .24            0
ESTWK2   0        .023      .44            etc
ESTWK3   0        0         etc etc etc

我了解如何使用 coef(ESTWK1),但是当我尝试将其粘贴到一行中时,我自然会遇到一个错误,混淆了两个向量的长度,例如在该模型中,可能有 100 个向量,其中有 15 个向量。

我想自动化这个过程,这样当处理新数据并运行回归时,我可以运行保存新系数数据的代码,然后我可以将其输出到 CSV(我已经得到的那部分)。想法?


第一步是将系数合并到一个数据框中,每个模型和项的组合一行。然后,您将能够将其展开到一个表中,每个模型一行,每个术语一列。

My 扫帚包有一个有用的功能,tidy将线性拟合转换为系数数据框:

fit <- lm(mpg ~ wt + disp + qsec, mtcars)
library(broom)
tidy(fit)
#          term  estimate std.error statistic p.value
# 1 (Intercept) 19.777558    5.9383    3.3305 0.00244
# 2          wt -5.034410    1.2241   -4.1127 0.00031
# 3        disp -0.000128    0.0106   -0.0121 0.99042
# 4        qsec  0.926649    0.3421    2.7087 0.01139

(请注意,与coef,这返回一个数据框而不是矩阵,并将术语合并为列而不是行名)。您可以将此函数应用于每个模型,然后重新组合,例如使用 plyr 的 ldply。我们使用 20 个与您的“模型”相同的模型生成一个示例:

models <- replicate(20, lm(mpg ~ wt + disp + qsec, mtcars), simplify = FALSE)
names(models) <- paste0("MODEL", 1:20)

那么我们的“整理并重新组合”代码将是:

all_coefs <- plyr::ldply(models, tidy, .id = "model")
head(all_coefs)
#    model        term  estimate std.error statistic p.value
# 1 MODEL1 (Intercept) 19.777558    5.9383    3.3305 0.00244
# 2 MODEL1          wt -5.034410    1.2241   -4.1127 0.00031
# 3 MODEL1        disp -0.000128    0.0106   -0.0121 0.99042
# 4 MODEL1        qsec  0.926649    0.3421    2.7087 0.01139
# 5 MODEL2 (Intercept) 19.777558    5.9383    3.3305 0.00244
# 6 MODEL2          wt -5.034410    1.2241   -4.1127 0.00031

然后,您需要删除 std.error、statistic 和 p.value 列并展开estimate期限结束。这可以通过 dplyr 和 tidyr 包来完成:

library(dplyr)
library(tidyr)
results <- all_coefs %>% select(-(std.error:p.value)) %>%
    spread(term, estimate)

这会产生:

     model (Intercept)      disp  qsec    wt
1   MODEL1        19.8 -0.000128 0.927 -5.03
2   MODEL2        19.8 -0.000128 0.927 -5.03
3   MODEL3        19.8 -0.000128 0.927 -5.03
4   MODEL4        19.8 -0.000128 0.927 -5.03
5   MODEL5        19.8 -0.000128 0.927 -5.03

这是您想要的输出。 (这个输出很无聊,因为所有模型都是相同的,但可能你的模型是不同的)。如果某些模型具有其他模型没有的系数,则缺失值将用 NA 填充。

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

将多个模型的回归系数打印到共享数据框 的相关文章

  • 为什么在 data.frame 中预先指定类型会比较慢?

    我预先分配了一个大 data frame 以便稍后填写 我通常这样做NA是这样的 n lt 1e6 a lt data frame c1 1 n c2 NA c3 NA 我想知道如果我预先指定数据类型是否会让事情变得更快 所以我测试了 f1
  • 如何从R中串扰的filter_select中删除(全部)?

    我遵循图 16 7 的示例https plotly r com client side linking html https plotly r com client side linking html并且无法弄清楚为什么有一个名为 全部 的
  • r:按多列分组并计数

    我有以下数据框 df LeftOrRight SpeedCategory NumThruLanes R 25to45 3 L 45to62 2 R Gt62 1 我想按速度类别对其进行分组 并循环遍历其他列以获取每个速度类别中每个唯一代码的
  • 如何上下移动字符串并从中删除相似的字符串?

    我问了一个可能不太清楚的问题 所以我尝试用一 种可以理解的方式来解释它 这是我的数据 我的数据看起来像这样 看起来像这样 V1 V2 V3 1 Q9UNZ5 Q9Y2W1 2 Q9ULV4 Q6QEF8 3 Q9UNZ5 4 Q9H6F5
  • dplyr:带引号变量名的 mutate 的标准评估

    我将如何使用mutate 我的假设是我正在寻找标准评价就我而言 因此mutate 但我对此并不完全有信心 当使用接受变量名列表的函数时 如下所示 createSum function data variableNames data gt m
  • 关于子组的新列和另一列中的百分比范围

    我有一个如下所示的示例 df df test lt data frame Group Name c Group1 Group2 Group1 Group2 Group2 Group2 Group1 Sub group name c A A
  • 如何更改 r 中的树状图标签

    我在 R 中有一个树形图 它基于使用 hclust 的分层聚类 我正在对不同颜色的标签进行着色 但是当我尝试使用以下命令更改树图的标签 集群所基于的数据帧的行 时dendrogram dendrogram gt set labels dat
  • mlogit:需要 TRUE/FALSE 时缺少值

    我有来自离散选择实验 DCE 的数据 该实验研究了来自不同行业的个人的招聘偏好 我已经格式化为长格式 我想使用 mlogit 进行建模 我已导出数据 并且可以使用 asclogit 命令在 Stata 中成功运行模型 但在 R 中运行时遇到
  • data.table 的包装函数

    我有一个已经使用 data frame 上下文编写的项目 为了缩短计算时间 我尝试利用 data table 的速度 我的方法是构造包装函数 读取帧 将它们转换为表 进行计算 然后转换回帧 这是一个简单的例子 FastAgg lt func
  • 行方向变异的有效方法

    我有两个数据框 dfUsers and purchases使用以下代码生成 set seed 1 library data table dfUsers lt data table user letters 1 5 startDate sam
  • 跨类别和列自动化卡方

    我有一个调查数据框 其中包含几个问题 列 编码为 1 同意 0 不同意 受访者 行 根据 年龄 年轻 中年 老年 地区 东 中 西 等指标进行分类 大约有30个类别总共 3个年龄 3个地区 2个性别 11个职业等 在每个指标中 类别不重叠且
  • 如何通过组度量的平均值在 df 内排列 dplyr:: 组?

    借鉴吴卡拉的设计https stackoverflow com a 26555424 9350837 https stackoverflow com a 26555424 9350837答案 我希望根据各个组汇总测量的平均值对分组 df 进
  • R,igraph,是否可以用图案填充顶点

    使用 R 和 igraph 绘制图形 我使用颜色来标记顶点类型 请参阅下面的代码 是否可以用图案而不是颜色填充顶点 以便在以彩色和黑白查看时可以区分节点类型 我需要 4 种独特的颜色 图案 colorbrewer 中唯一适合的调色板是这个
  • R 中具有 p 值的相关矩阵

    假设我想要传导相关矩阵 library dplyr data iris iris gt select if is numeric gt cor y iris Petal Width method spearman gt round 2 现在
  • 如何在R中创建for循环? [复制]

    这个问题在这里已经有答案了 可能的重复 如何在 R 编程中启动 for 循环 https stackoverflow com questions 4162363 how to start a for loop in r programmin
  • 如何不显示 ggplot 轴上的所有标签?

    I m trying to using ggplot2 to plot this But as you can see on the x axis you can t read anything 那么如何在 x 轴上显示每 10 年的值呢
  • R 无法回忆起内存中的对象

    我正在构建一个包含多个步骤的函数 其中每个步骤都会创建一个对象 某个步骤失败 temp3 并且无法找到前面的步骤对象 错误 未找到对象 temp2 我不知道为什么 我有类似的函数 遵循完全相同的结构 每个步骤都遵循先前创建的对象 在函数内
  • 连接树状图和热图

    我有一个heatmap 一组样本的基因表达 set seed 10 mat lt matrix rnorm 24 10 mean 1 sd 2 nrow 24 ncol 10 dimnames list paste g 1 24 sep p
  • 使用 R 将日期格式的字符串列表/向量转换为 posix 日期类

    我有一个日期格式的字符串列表 我想将其转换为可以使用 R 操作的 posix 日期列表 我该怎么做 这就是我所拥有的 但我最终得到了一个列表 a lt c 2009 01 01 00 00 00 2009 01 01 00 00 00 z
  • 在 R 中读入原始二进制数据并将其转换为整数

    我有一个二进制文件 其中包含编码为不同长度 主要是 2 4 字节 的有符号或无符号整数的数值 为了处理这些数据 我将文件的所需部分读取为raw向量与readBin 然后尝试将其转换为十进制 问题是 R的内置函数有限制 我不太明白 比如没有l

随机推荐

  • 具有不对称误差线的 matplotlib bar

    我需要绘制带有不对称误差线的条形图 matplotlib pyplot bar 函数的文档说 详细信息 xerr 和 yerr 直接传递给 errorbar 因此它们也可以具有 2xN 的独立形状 下限和上限误差的规范 但是 我不能给 ye
  • 将 C++ 中的字符串转换为大写

    如何将字符串转换为大写 我从谷歌搜索中找到的例子只需要处理字符 include
  • 如何使用字典执行多个搜索和替换操作? [复制]

    这个问题在这里已经有答案了 我必须在地址字段中将 北 南 等文本替换为 N S 等 我想到制作一本字典来保存替换内容 假设我们有 replacements NORTH N SOUTH S EAST E WEST W address 123
  • 如何在 JSP 中从 /main/resources 链接 Web 资源文件?

    我的 java webapp 中有以下结构 main java resources lib css style css webapp WEB INF web xml index jsp 如何将 style css 链接到我的索引 jsp 这
  • AngularFire - 如何查询非规范化数据?

    好的 我刚刚开始使用 Firebase 我读过这个 https www firebase com docs data struct html我读过这个 https www firebase com blog 2013 04 12 denor
  • C++ 结构体的 stlpriority_queue

    我们如何使用STLpriority queue对于结构 任何插图推入和弹出的过程中 结构体有多种数据类型 Say struct thing int a char b glass 10 现在我如何使用 int a 将这个结构放在priorit
  • Thread.CurrentThread.Join() 什么时候有意义?

    调用 Thread CurrentThread Join 的效果是什么 是否 何时调用它才有意义 真的是吗 CurrentThread Join 你在真实代码中看到的 我有点怀疑 除非这是一些阻止其他线程加入当前线程的黑客 或者是 Curr
  • spring-cloud-starter-openfeign:无效的 HTTP 方法:PATCH 执行 PATCH

    Context 我有一个 Spring Boot 版本 2 2 6 RELEASE Web 项目 从这个 Web 应用程序 我称之为 APP1 中 我想使用另一个 Web 应用程序 我们称之为 APP2 的 PATCH 方法调用另一个 UR
  • NSCollectionView 与部分 - 就像在 iPhoto 中一样

    我想构建一个类似于 iPhoto 11 中的 NSCollectionView 我想将几张图片分组到部分中 并创建一个部分标题 特定节的节标题始终可见 直到该节的最后一个元素可见 你可以看看图片就明白我的意思了 编辑 我应该补充一点 内容不
  • C# 中的延迟函数

    我需要了解如何在一组命令之间创建延迟 我的背景是 C DOS 现在在 Visual Studio 2015 中使用 C 重温这些概念 这是我正在努力解决的代码 using System Threading private void butt
  • 如何在 Cloud Api Gateway 的响应正文中添加一些数据

    我正在将一些身份验证逻辑添加到云 api 网关中 我添加了网关过滤器 import java util List import org springframework cloud gateway filter GatewayFilter i
  • 我想在我的手机上安装未签名的 apk 文件。该怎么办? [关闭]

    Closed 这个问题是无关 目前不接受答案 我已经构建了一个应用程序 我通过Eclipse APK导出它 我有 APK 文件 我想将其发送给我的父亲 在另一个国家 因此无法做很多技术工作 以便他可以安装它并查看我的进度 如果没有在 Pla
  • 使用 AVFoundation 切换摄像头时视频冻结

    我制作了一个具有捕获和保存视频功能的应用程序 我为此使用了 AVFoundation苹果的AVCam一直是我的向导 我希望我能说清楚 一切工作正常 直到我第一次释放处理 AVCamCaptureManager 的 videoViewCont
  • 为什么 if 语句中的表达式顺序很重要

    假设我有一个IF健康 状况 if A B left do something 现在假设A那么更有可能获得真实值B 为什么我要关心左边哪一个 如果我把它们都放在IF括号 那么我就知道 作为代码的程序员 双方都是需要的 问题是 我的教授在他的讲
  • Laravel Eloquent 嵌套查询

    我正在使用 Laravel 并陷入了困境 我有以下型号 类别 Product 类别产品 CategoryProduct保存有关哪个产品属于哪个类别的信息 一个产品可能属于多个类别 现在 当我想加载属于特定类别的所有产品时 我需要运行查询Pr
  • 根据浏览器包含不同的 JavaScript 文件?

    我只想在浏览器不是 IE 时才包含 JavaScript 文件 有什么办法可以做到这一点吗 2022 年更新 为您提供一些选择 让您的服务器查看User Agent标头并向 Internet Explorer 发送与其他浏览器不同的 HTM
  • Android 中使用 java 的方法 Swizzling

    是否可以使用java在android中进行方法调配 我想拦截一个系统方法并记录其参数 然后正常处理它 我认为该技术不能在任何环境中使用 Java 来使用 也许您可以使用 AOP 获得类似的结果 但在 Android 上你能用它做的事情看起来
  • 对未命名临时对象的引用(生命周期)

    看完之后这个答案 from ildjarn 我写了下面的例子 看起来一个未命名的临时对象和它的引用有相同的生命周期 这怎么可能 C 标准中有规定吗 哪个版本 源代码 include
  • 从网络位数转换为网络掩码的最佳方法是什么?

    例如 如果我有一个像 172 20 10 0 24 这样的网络规范 24 就是位数 将其转换为像 0xffffff00 这样的网络掩码的最佳方法是什么 假设 32 位掩码和 32 位 int int keepBits 24 actually
  • 将多个模型的回归系数打印到共享数据框

    我知道这有点初级 基本上 我想将 coef 函数中的保存数据用于模型的共享数据框架 这些模型都从更大的共享数据集中提取有限的可能变量 我有3套14个模型 每组使用 100 个变量数据集中的 15 25 个变量 每个模型混合使用约 12 个变