首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >多结局二项回归R

多结局二项回归R
EN

Stack Overflow用户
提问于 2022-10-10 14:28:32
回答 1查看 43关注 0票数 1

可以使用cbind为普通lm回归指定多个结果:

代码语言:javascript
运行
AI代码解释
复制
set.seed(11)
df <- iris %>%
  mutate(var1 = sample(c(0L,1L), 150, replace = TRUE),
         var2 = sample(c(0L,1L), 150, replace = TRUE))

df %>%
  lm(cbind(var1, var2) ~ Sepal.Width + Sepal.Length, data = .) %>%
  coef()

#                      var1        var2
# (Intercept)  0.5010092855  1.17035845
# Sepal.Width  0.0015431925 -0.16210972
# Sepal.Length 0.0001607519 -0.03218511

这能用二项式glm来完成吗?如果没有,应该如何进行预期的分析(MANOVA)?

代码语言:javascript
运行
AI代码解释
复制
df %>%
  glm(cbind(var1, var2) ~ Sepal.Width + Sepal.Length, family = binomial, data = .) %>%
  coef()

# (Intercept)  Sepal.Width Sepal.Length 
#  -1.3886130    0.3587017    0.0588412 

上面的glm似乎并没有像lm那样产生一个系数矩阵,输出的格式与指定的结果相同。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-10 14:50:20

不是这边。lm()允许这样做,因为线性回归的特定结构允许同时(并且有效)求解多个响应变量的线性回归方程。这个技巧在广义线性模型中行不通。

要用glm()来做这件事,你必须自己设置它。

代码语言:javascript
运行
AI代码解释
复制
ff <- function(var) {
   f <- reformulate(c("Sepal.Length", "Sepal.Width"), response = var)
   glm(f, data = df, family = binomial)
}
(c("var1", "var2")
   |> purrr::map(ff)
   |> purrr::map(coef)
   |> bind_cols()
)

(您仍然需要整理行/列名)

代码语言:javascript
运行
AI代码解释
复制
library(broom)
(c("var1", "var2")
   |> setNames(nm = _)
   |> purrr::map(ff)
   |> purrr::map_dfr(tidy, .id = "respvar")
   |> select(respvar, term, estimate)
   |> pivot_wider(names_from = "respvar", values_from = "estimate")
)

lme4::lmList()处理数据采用长格式的情况:

代码语言:javascript
运行
AI代码解释
复制
library(broom.mixed)
library(lme4)
(df 
   |> pivot_longer(c(var1, var2))
   |> lmList(formula = value ~ Sepal.Length + Sepal.Width | name,
             family = binomial)
   |> coef()
   |> t() ## transpose
)

还有很多其他的问题,所以这些问题的变体(对不同的响应变量运行lm()/glm(),列表的元素等等),但是我很难找到它们。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74021243

复制
相关文章
「R」逻辑回归
逻辑回归典型使用于当存在一个离散的响应变量(比如赢和输)和一个与响应变量(也称为结果变量、因变量)的概率或几率相关联的连续预测变量的情况。它也适用于有多个预测变量的分类预测。
王诗翔呀
2020/07/02
5760
「R」回归分析
从许多方面来看,回归分析是统计学的核心。它其实是一个广义的概念,通指那些用一个或多个预测变量(也称为自变量或解释变量)来预测响应变量(也成因变量、效标变量或结果变量)。
王诗翔呀
2020/07/03
1.7K0
R语言_回归分析
R里面已经包含了众多的回归 为了解释OLS模型的参数,数据必须满足以下统计假设: 评估模型的方法 #lm拟合回归模型 #简单线性回归 fit = lm(weight~height,data
用户1147754
2019/05/26
1.2K0
R语言对回归模型进行回归诊断
作者:夏尔康 https://ask.hellobi.com/blog/xiaerkang/4129 在R语言中,对数据进行回归建模是一件很简单的事情,一个lm()函数就可以对数据进行建模了,但是建模了之后大部分人很可能忽略了一件事情就是,对回归模型进行诊断,判断这个模型到低是否模型的假定;如果不符合假定,模型得到的结果和现实中会有巨大的差距,甚至一些参数的检验因此失效。 因为在对回归模型建模的时候我们使用了最小二乘法对模型参数的估计,什么是最小二乘法,通俗易懂的来说就是使得估计的因变量和样本的离差
机器学习AI算法工程
2018/03/14
2.1K0
R语言对回归模型进行回归诊断
R可视乎|回归诊断
回归应该算得上统计分析中最常用的建模手段,要判断最终得到的模型是否准确,还需要进行关键的一步——回归诊断。用过 R 语言进行回归分析的小伙伴应该知道,base 包里的 plot()函数可以直接绘制诊断结果,今天小编介绍一个更方便的工具:Lindia包[1],使用这个包可以获得更详细的回归诊断结果,语法也非常简单,下面跟着小编一起学习吧~
庄闪闪
2021/12/22
1.4K0
R可视乎|回归诊断
「R」回归和相关分析
线性回归,当datx是预测变量时,daty为响应变量。这可以使用一个数据框的两列,或者是直接使用数值向量。
王诗翔呀
2020/07/06
8860
R语言-泊松回归
当通过一系列连续型和或类别型预测变量的预测计数型结果变量时,泊松回归是非常有用的工具。利用robust包学习和理解泊松回归。
黑妹的小屋
2020/08/06
5650
R语言在逻辑回归中求R square R方
并非所有结果/因变量都可以使用线性回归进行合理建模。也许第二种最常见的回归模型是逻辑回归,它适用于二元结果数据。如何计算逻辑回归模型的R平方?
拓端
2020/07/17
4.4K0
R分类算法-Logistic回归算法
本文介绍了逻辑回归(Logistic Regression)算法,这是一种用于分类问题的统计方法。文章首先解释了逻辑回归的基本概念,然后详细阐述了如何在R语言中使用glm函数进行逻辑回归建模。最后,文章通过一个实际案例展示了如何使用逻辑回归模型进行预测。
Erin
2018/01/09
9600
用R语言做逻辑回归
用R语言做逻辑回归 jmzeng(jmzeng1314@163.com) 回归的本质是建立一个模型用来预测,而逻辑回归的独特性在于,预测的结果是只能有两种,true or false 在R里面做逻辑回归也很简单,只需要构造好数据集,然后用glm函数(广义线性模型(generalized linear model))建模即可,预测用predict函数。 我这里简单讲一个例子,来自于加州大学洛杉矶分校的课程 首先加载需要用的包 library(ggplot2) library(Rcpp) 然后加载测试数据 my
生信技能树
2018/03/08
2K0
用R语言做逻辑回归
「R」R传统图形绘制多图
mfrow 和 mfcol 都由 2 个数字指定,一个表示行数、一个表示列数。如果使用 mfrow,那么图像区域会被按行依次使用;如果使用 mfcol,那么图像区域会按列依次使用。
王诗翔呀
2020/07/06
7280
「R」R传统图形绘制多图
R中的线性回归分析
本文介绍了线性回归分析在R语言中的实现,以及如何使用回归分析函数进行预测。首先介绍了简单线性回归模型,然后讲解了回归分析函数lm的使用,以及预测函数predic的使用。最后通过一个实际案例展示了如何使用这些函数进行预测。
Erin
2018/01/09
1.6K0
R语言入门之线性回归
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍先回顾一下线性回归模型的成立的四个条件(LINE):
生信与临床
2020/08/06
2.7K0
R语言入门之线性回归
R实现多分类logistic回归
在临床研究中,接触最多的是二分类数据,如淋巴癌是否转移,是否死亡,这些因变量最后都可以转换成二分类0与1的问题。然后建立二元logistic回归方程,可以得到影响因素的OR值。
Jamesjin63
2022/10/25
1.2K0
R实现多分类logistic回归
R语言实现LASSO回归
Lasso回归又称为套索回归,是Robert Tibshirani于1996年提出的一种新的变量选择技术。Lasso是一种收缩估计方法,其基本思想是在回归系数的绝对值之和小于一个常数的约束条件下,使残差平方和最小化,从而能够产生某些严格等于0的回归系数,进一步得到可以解释的模型。R语言中有多个包可以实现Lasso回归,这里使用lars包实现。
全栈程序员站长
2022/06/30
2K0
R语言实现LASSO回归
R语言-简单线性回归
lm(formula = weight ~ height, data = women)
黑妹的小屋
2020/08/06
5780
R语言生存分析:Cox回归
上次介绍了生存分析中的寿命表、K-M曲线、logrank检验、最佳切点的寻找等,本次主要介绍Cox回归。
医学和生信笔记
2023/02/14
1.8K1
R语言生存分析:Cox回归
R语言实现LASSO回归——自己编写LASSO回归算法
原文链接:http://tecdat.cn/?p=18840 这篇文章中我们可以编写自己的代码来计算套索(lasso)回归, 我们必须定义阈值函数 R函数是 thresh = function(x,
拓端
2020/12/31
1.5K0
R语言系列五:①R语言与多元回归
这一节里我们将要讨论包含多个预测变量的回归分析问题。不过模型设定和结果输出等内容与前面系列讲过的关于回归分析和方差分析的内容差别不大,链接:R语言系列第四期:②R语言多组样本方差分析与KW检验、R语言系列第四期:④R语言简单相关与回归。
百味科研芝士
2019/05/24
9710
R语言系列五:①R语言与多元回归
R语言系列五:⑤R语言与多元回归
下面以Altman提到的一项关于囊胞性纤维症患者的肺功能的研究作为例子,数据集是ISwR包中的cystifibr。
百味科研芝士
2019/05/23
9860

相似问题

R:预测最高结局的概率

10

用R进行多类logistic回归

12

R中的多水平Logistic回归

10

R期生存结局的SuperLearner研究

13

小结局

16
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文