使用 glm 指定 R 中的公式,无需显式声明每个协变量

2024-01-04

我想将特定变量强制纳入 glm 回归,而不完全指定每个变量。我的真实数据集有大约 200 个变量。到目前为止,我在网上搜索中还没有找到这样的样本。

例如(只有 3 个变量):

n=200
set.seed(39) 
samp = data.frame(W1 = runif(n, min = 0, max = 1), W2=runif(n, min = 0, max = 5)) 
samp = transform(samp, # add A
A = rbinom(n, 1, 1/(1+exp(-(W1^2-4*W1+1))))) 
samp = transform(samp, # add Y
Y = rbinom(n, 1,1/(1+exp(-(A-sin(W1^2)+sin(W2^2)*A+10*log(W1)*A+15*log(W2)-1+rnorm(1,mean=0,sd=.25))))))

如果我想包含所有主要术语,有一个简单的快捷方式:

glm(Y~., family=binomial, data=samp)

但是假设我想包含所有主要项(W1、W2 和 A)加上 W2^2:

glm(Y~A+W1+W2+I(W2^2), family=binomial, data=samp)

这有捷径吗?

[发布前编辑自我:]这有效!glm(formula = Y ~ . + I(W2^2), family = binomial, data = samp)

好吧,那这个呢!

我想省略一个主要术语变量,只包含两个主要术语(A,W2)和 W2^2 和 W2^2:A:

glm(Y~A+W2+A*I(W2^2), family=binomial, data=samp)

显然,只有几个变量并不需要捷径,但我使用的是高维数据。当前的数据集“仅”有 200 个变量,但其他一些数据集有数千个变量。


您的使用.创造性地构建包含所有或几乎所有变量的公式是一种良好而简洁的方法。有时有用的另一个选项是以编程方式将公式构建为字符串,然后使用将其转换为公式as.formula:

vars <- paste("Var",1:10,sep="")
fla <- paste("y ~", paste(vars, collapse="+"))
as.formula(fla)

当然,您可以使fla对象方式更复杂。

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

使用 glm 指定 R 中的公式,无需显式声明每个协变量 的相关文章

  • RStudio 在临时目录中从 Rmarkdown 创建 PDF 文件

    我使用 RStudio 和 Rmarkdown 来创建报告 由于某种原因 使用 Knit 按钮会导致它仅在某个临时目录中创建 从命令输出来看 似乎 pandoc 本身被指示这样做 我觉得这很奇怪 usr lib rstudio bin pa
  • 将 data.frame 的列中的值替换为另一个 data.frame 中的值

    我的情况是 我有一个数据框 其中有一列填充了整数 1 到 6 我想用更具描述性的标签替换这些整数 这些标签在另一个充当 键 的数据框中提供 V1 V2 1 1 LABEL1 2 2 LABEL2 3 3 LABEL3 4 4 LABEL4
  • 反转默认比例梯度ggplot2

    我是新手 我正在尝试设计热图 这是我的代码 ggplot gd aes Qcountry Q6 1 Q6d order TRUE geom tile aes fill prob colour white theme minimal labs
  • 在 mts 对象上使用 Apply 系列函数

    在 mts 对象上使用 apply 或 sapply 会在发送到函数时删除其时间序列属性 我应该如何在 mts 对象中的每个时间序列上应用相同的函数 带有 ts 输入和 ts 输出 并返回它 最好是 mts 我的意思是除了使用 for 循环
  • 根据值的运行总计创建组

    我的数据在一个变量 Y 上是唯一的 另一个变量 Z 告诉我每个 Y 中有多少人 我的问题是我想从这些 Y 和 Z 创建 45 人的组 我的意思是 每当运行总计Z 达到 45 创建一组 然后代码继续创建下一组 我的数据看起来像这样 ID X
  • 在 R 中读取 Stata 13 文件

    有没有办法在 R 中读取 Stata 版本 13 数据集文件 我尝试执行以下操作 gt library foreign gt data read dta TEAdataSTATA dta 但是 我收到一个错误 read dta TEAdat
  • ggplot 中跨组的连续线

    我有一个数据时间序列 其中观察了一些数据 模拟了一些数据 我想生成整个数据系列随时间变化的图 其中颜色表示数据源 但是 我只能弄清楚如何使 ggplot 中的 geom line 连接同一组中的点 这是一个例子来说明 Create samp
  • R 中 write.table 文件名中的变量

    请帮助我解决一个幼稚的问题 已经用谷歌搜索 并尝试了很多变体 但失败了 如何使用 R 中 write table 的文件名中的变量保存文件 脚本循环遍历 dir 中的文件 应用一些函数 然后将结果保存到具有相同名称但附加结尾的文件中 谢谢
  • 如何判断某个软件包是否已经安装?

    当我安装 yaml 包时 如果之前已经安装过 RStudio 则会弹出一条烦人的错误消息 如何判断该软件包是否已安装 以便我可以在代码中决定是否安装该软件包 该消息位于弹出窗口中 内容如下 此安装将更新的一个或多个软件包 当前已加载 在更新
  • 如何在 R 地图库中绘制正确的颜色

    我正在尝试使用 R 地图库为特定国家绘制特定颜色 我可以填写颜色 但它们与各自的国家 地区没有正确关联 我想知道是否有人能知道为什么 我的数据框是 filld 有 3 列 第一列是国家名称 第二列只是一些数字数据 第三列是颜色 countr
  • 如何在R中逐行写入文件

    我正在尝试逐行读取 csv 文件 并且仅选择左侧的第二个和第三个单元格以及右侧的第三个单元格 例如 如果这一行中有 17 个单元格 我将选取第 15 个单元格 然后我想合并这 3 个单元格 用逗号分隔 然后将此行写入一个新的 csv 文件
  • R:在 Shiny 中,如何修复应用于“反应性”类对象的“xtable”没有适用的方法

    我收到此错误 Error in UseMethod xtable no applicable method for xtable applied to an object of class reactive UI R library shi
  • 我可以调整scale_color_brewer的下限吗?

    我已经订购了我想使用 color Brewer 的分类数据 但我很难看到非常低的值 有没有办法去掉这些较低的值或设置范围的下限 ggplot data frame x 1 6 y 10 15 w letters 1 6 aes x y co
  • 当子集长度为零时,如何简洁地处理子集?

    从向量中排除元素x x lt c 1 4 3 2 我们可以减去位置向量 excl lt c 2 3 x excl 1 1 2 这也是动态工作的 excl lt which x which max x gt quantile x 25 1 2
  • 如何在multilist中设置xlim?

    以下代码创建 3 个向量 并将它们显示为交错直方图 a lt c 1 2 3 b lt c 1 1 2 c lt c 1 1 1 l lt list a b c multhist l col c red green blue xlim c
  • 使用 R 中的 tidyverse 重新调整因子和重新排序因子

    我想使用这些功能重新调平 and 重新排序 在我的数据框中 我了解重新调整级别的工作原理 但我不明白为什么我在 data frame 中看不到级别的变化 例如 假设我有鸢尾花数据集 library tidyverse head iris g
  • 将 csv 文件上传到shinyApps.io

    我的应用程序在本地运行良好 并且我能够成功地将应用程序部署到shinyapps io 服务器 但是当我尝试使用shinyapps URL 在浏览器中加载应用程序时 收到以下错误消息 错误对象 数据 不是成立 我认为这是因为 data 变量从
  • 绘制带有颜色渐变的geom_segment线? (或者还有另一种方法来强调开始与结束吗?)

    我的数据框中有大量行 100 000 的两组纬度和经度变量 我正在尝试绘制一个连接这两组坐标的图 即 从纬度1 经度1 to 纬度2 经度2 使用 geom segment 使用非常低的 alpha 使线条透明 因为线条太多 我想强调这些线
  • 求解非线性方程组

    我正在尝试求解以下四个方程组 我尝试过使用 rootSolve 包 但似乎我无法通过这种方式找到解决方案 我正在使用的代码如下 model lt function x F1 lt sqrt x 1 2 x 3 2 1 F2 lt sqrt
  • DT数据表中的列对齐

    In my shiny我正在使用的应用程序datatable函数来自DT库构建一个表格并希望将列居中对齐 我可以用formatStyle column textAlign center 但它只影响列体而不影响标题 我们必须设置columnD

随机推荐

  • 对于 ReviewManager Api,可以使用什么来代替 TaskException?

    尝试跟随谷歌应用内评论教程 https developer android com guide playcore in app review kotlin java kotlin我目前被以下代码困扰 val request manager
  • 使用 Google 的 Java API 客户端库进行身份验证时出现 IllegalArgumentException

    我正在尝试运行 QuickStart javahttps developers google com sheets api quickstart java https developers google com sheets api qui
  • django通用(类)视图中的多个表单类

    我想对表单使用 django 1 3 的基于类的通用视图 但有时必须在一种表单中管理多个表单类 然而 看起来基于 FormMixin 的现有视图假定单个表单类 这对于通用视图来说是可能的吗 我该怎么做 编辑 澄清一下 我有一种形式 但有多个
  • 什么可能导致不同 PC 上的相同浏览器以不同方式呈现相同的 HTML?

    我很困惑 我和一个客户都在 XP 机器上运行 Firefox 3 0 12 我们在不同的机器上用同一个浏览器查看同一个页面 会得到不同的结果 注意 所有IE浏览器在两台机器上都是一致的 我的FF 3 5 1和我的FF 3 0 12是一致的
  • 在预提交中运行 ESLint 不会因警告而停止

    我正在向我的项目添加一些预提交和预推送脚本 我使用 Husky 因为它会在 git 上跟踪任何更改 在我的 package json 上我有 precommit npm run lint npm run test 当任何测试或 lint 时
  • 如何在 Linux 或 Macos 中编译适用于 Windows 的静态 .lib 库

    我正在寻找在 Linux 或 Macos 中编译 Windows 静态库的方法 似乎有交叉编译器可以为 Windows 生成 a 库 例如this one https stackoverflow com questions 4624078
  • Tailwind CSS:隐藏一个div并将其替换为另一个

    我想做的是 当有人将鼠标悬停在图像 div 上时 中间标题将被隐藏并替换为我想要显示的一些文本 我已经尝试了 100 种方法来实现这一目标 但从未完全奏效 寻找解决方案 div class flex flex row h screen bg
  • Scala 中丰富的枚举

    我正在寻找一种在 Scala 中实现丰富枚举的机制 就像在 Java 中向枚举添加抽象方法并在枚举的实例中实现它们一样 请注意 使用密封特征和案例对象不是一个解决方案 因为我将无法迭代现有的案例对象 除非我维护它们的列表 这对于更改非常脆弱
  • 将 XML 中的数据字段提取到 Excel 中

    我有一个巨大的 Excel 电子表格 其中包含客户记录 其中每一列都是一个字段 有一个名为 人口统计 的字段 其中包含客户的调查结果 并且完全采用 XML 格式 也就是说 每个客户都有一份关于其人口统计信息的调查结果 如性别 婚姻状况 收入
  • 未定义的变量 php 通知解决方法?

    我只是打开通知 因为它有一些我调试时需要的重要信息 话虽这么说 我发现未定义的变量真的很痛苦 例如 要删除未定义的变量通知 我必须输入以下代码 if the month row the month into if isset the mon
  • Spring:在 JUnit 测试中测试 JSP 输出

    我们有一个 API 它返回 JSP 作为视图 例如 RequestMapping value cricket matchId method RequestMethod GET public String getCricketWebView
  • 使用模板输入变量的 Angular 2 自定义结构指令绑定不起作用

    我创建了一个类似于的自定义结构指令ngFor 当我尝试使用它时
  • 使用 Plots.jl 有效地对子图进行动画处理

    我正在尝试使用 Plots jl 和 GR 后端在 Julia 中创建具有三个子图 一个表面 两个热图 的动画 到目前为止 我的代码中最慢的部分是这些图的生成 因此我试图找到最有效的方法来完成它 我尝试重新调用动画循环内的绘图 但这比就地修
  • C#:带有 SocketAsyncEventArgs 的 SSL?

    我正在使用 C NET 开发套接字服务器 我使用 SocketAsyncEventArgs 类提供的异步模型 因为它必须是高性能服务器才能在短时间内支持许多连接 接下来 我想确保之间的通信安全 客户端和服务器 我想我可以使用 SSL 有没有
  • 如何在 onedriveAPI 的请求正文中指定 @microsoft.graph.conflictBehavior

    我正在开发一个具有以下要求的 C 项目 如果文件夹不存在则创建一个 检查是否已经存在 如果存在则增加文件名 来自 Onedrive API 文档在 OneDrive 中创建新文件夹 https dev onedrive com items
  • django:更改扩展模型类的默认值

    我早些时候发布了类似的问题 但这个问题有所不同 我有一个相关类的模型结构 例如 class Question models Model ques type models SmallIntegerField default TYPE1 Cho
  • MySQL 无法启动 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 当我尝试启动 MySQL 时 我得到 ERROR 2002 HY000 Can t connect to local MySQL server thr
  • 代码::块中的 C DLL

    我在 Code Blocks 中找不到有关如何创建 C DLL 的任何信息 每当我尝试查找它时 它都会显示在托管编程语言中使用 C DLL 的链接 Code Blocks 没有提供 C DLL 的选项 我该怎么办 文件 gt 新建 gt 项
  • 如何通过 telethon 获取 telegram 私人频道 id

    您好 不知道如何解决这个问题 因此我们将非常感谢任何帮助 我订阅了私人频道 该频道没有用户名 我也没有邀请链接 管理员刚刚添加了我 由于我在工作中使用此频道 为了加快处理速度 我想使用 Telethon 处理在该频道上发布的消息 该方案的核
  • 使用 glm 指定 R 中的公式,无需显式声明每个协变量

    我想将特定变量强制纳入 glm 回归 而不完全指定每个变量 我的真实数据集有大约 200 个变量 到目前为止 我在网上搜索中还没有找到这样的样本 例如 只有 3 个变量 n 200 set seed 39 samp data frame W