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

使用fct_relevel调整2×2实验设计交互项因子水平排序

解决方案

你只需要在调用interaction()时添加lex.order = TRUE参数即可。该参数会让交叉因子的水平按照「先遍历第一个因子的第一个水平下所有第二个因子的水平,再遍历第一个因子的下一个水平下所有第二个因子的水平」的规则排序,无需硬编码其他非参考水平,只要提前把gen和treat的参考水平设置正确即可适配任意其他水平组合。


修改后代码

library(tidyverse)
toy1 <- tidyr::expand_grid(
  gen = c("WT", "QQ"),
  treat = c("saline", "ab")
)

toy1 %>% 
  mutate(gen = fct_relevel(gen, reference="WT"),
         treat = fct_relevel(treat, reference="saline"),
         # 新增lex.order参数控制排序逻辑
         inter = interaction(gen, treat, lex.order = TRUE)) %>% 
  pull(inter)

运行输出

[1] WT.saline WT.ab     QQ.saline QQ.ab    
Levels: WT.saline WT.ab QQ.saline QQ.ab

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 22:18:01