r - 如何设置应始终包含主要效果
问题描述
我正在使用带有该功能的olsrr
软件包。我的模型有 4个ols_step_all_possible
预测变量:Year
、Lay_date
和。Clutch_size
Yolk_mass
我的第一个模型是这样定义的:
m1 <- lm(T4 ~ Year + Jul_date + Clutch_size + Yolk_mass, data=data)
k1 <- ols_step_all_possible(m1)
然后输出 ( k1
) 为我提供了 15 个具有不同预测变量组合的可能模型。美好的。现在,我想包括两种方式的交互。
m2 <- lm(T4 ~ Year*Jul_date + Year*Clutch_size + Year*Yolk_mass, data=data)
k2 <- ols_step_all_possible(m2, iterm = TRUE)
这是我卡住的地方:输出k2
生成 127 个可能的模型(所有可能的)。其中一些包括交互作用,但不包括主效应。例如,具有最高调整 R 平方的模型包括以下预测变量:
Jul_date
, Clutch_size
, Yolk_mass
,Year:Yolk_mass
该变量Year
是我主要感兴趣的变量。但是,这里仅将其作为与蛋黄质量的相互作用包括在内,而不是作为主要影响(用“:”而不是“*”表示)。
如何选择具有最高 R 平方的感兴趣模型?我可以添加一个命令,强制 R 始终忽略不包括Year
作为主要因素的模型吗?还是我应该简单地搜索输出k2
并找到 1) 包含的模型Year
,以及 2) 具有最高 R 平方的模型?
提前感谢您的帮助!
干杯,玛吉
解决方案
推荐阅读
- angular - 如果 API 调用失败,如何将切换状态更改为原始状态
- matlab - 使用 h5py 读取 matlab .mat 文件
- airflow - 气流:是否可以在 DAG 中配置任务级超时?
- javascript - 在javascript中排列对象键(字符串,字符串中的数字)
- laravel - Laravel - 如何在“whereHas”中检查关系中的所有记录?
- android - 使用 ADB shell 命令在 android 上禁用绝对蓝牙音量
- python - 在 Python 中估计或绑定浮点转换错误
- hibernate - LiquiBase - 找不到数据库驱动程序 liquibase.ext.hibernate.database.connection.HibernateDriver
- android - 使用颤振不停地振动
- php - 使用 laravel 理解模型关系