You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何合并两个inventory生成单一维度以用于层级回归分析

你当前代码的错误在于公式中多了多余的逗号,+ (C1 + C2)被逗号截断后不会被识别为回归公式的一部分,因此不会对结果产生影响。

方案1:直接在lm公式内合并C1、C2

使用I()函数包裹加法运算,告知R该部分为算术计算而非公式语法:

# 合并C1、C2为C维度纳入回归
reg <- lm(IASMHS80 ~ A + B + I(C1 + C2), data = mydatareg)
summary(reg)

如果要做层级回归对比方差解释度,可以分步骤构造模型再做方差分析:

# 层级1:仅纳入A
mod1 <- lm(IASMHS80 ~ A, data = mydatareg)
# 层级2:加入B
mod2 <- lm(IASMHS80 ~ A + B, data = mydatareg)
# 层级3:加入合并后的C维度
mod3 <- lm(IASMHS80 ~ A + B + I(C1 + C2), data = mydatareg)
# 对比三个模型的方差解释度差异
anova(mod1, mod2, mod3)

方案2:提前在数据集生成C维度(更推荐)

提前构造变量的方式灵活性更高,也方便后续校验、复用:

# 简单加总生成C维度
mydatareg$C <- mydatareg$C1 + mydatareg$C2

# 如果需要标准化后再合并可以用以下写法
# mydatareg$C <- scale(mydatareg$C1) + scale(mydatareg$C2)

# 运行回归
reg <- lm(IASMHS80 ~ A + B + C, data = mydatareg)
summary(reg)

内容的提问来源于stack exchange,提问作者Nibuz_Ertived

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 17:09:04