伈刼@ 2023-06-08 15:42 采纳率: 0%
浏览 40
已结题

r的lmm模型如何不将期待产出的水平设置为基准变量?

我用r做lmm模型,对1个具有3个水平的固定因子的原始数据进行了宽转长的操作。但是我的结果默认将其中一个水平的固定因子作为分类变量处理了,该怎么办?

data2 <- speed%>%pivot_longer(4:6,names_to='strategy', values_to='Speed')%>% filter(Speed>0)
dummies <- model.matrix(~ as.numeric(data2$strategy == "Conventionally.indirect.strategy.speech.rate") - 1, data = data2)
dummies <- model.matrix(~ as.numeric(data2$strategy == "Direct.strategy.speech.rate") - 1, data = data2)
dummies <- model.matrix(~ as.numeric(data2$strategy == "Non.Conventionally.indirect.strategy.speech.rate") - 1, data = data2)
data3 <- cbind(data2, dummies)
model <- lmer(Speed ~ strategy + 
                Chinese.proficiency.levels + 
                strategy:Chinese.proficiency.levels + 
                (1 | Speakers), data = data3)

在代码中,我尝试设置虚拟变量,好像没啥用,最后还是产出了2个水平。所以……求解答。

  • 写回答

5条回答 默认 最新

  • 是小韩呀 2023-06-12 16:40
    关注
    获得0.75元问题酬金

    在你的代码中,产生了多个dummies变量,但是这些变量并没有在后续的模型拟合中使用。因此,无论你生成了多少个虚拟变量,最终的模型仍然会将固定因子的一个水平作为分类变量处理。
    要将固定因子的所有水平都作为分类变量处理,你可以使用factor()函数将其转换为因子变量。下面是修改后的代码示例:

    data2 <- speed %>%
      pivot_longer(4:6, names_to = 'strategy', values_to = 'Speed') %>%
      filter(Speed > 0)
    
    data2$strategy <- factor(data2$strategy)  # 将strategy列转换为因子变量
    
    model <- lmer(Speed ~ strategy + 
                    Chinese.proficiency.levels + 
                    strategy:Chinese.proficiency.levels + 
                    (1 | Speakers), data = data2)
    
    
    

    通过将data2$strategy列转换为因子变量,lmer()函数将会将所有水平都作为独立的分类变量处理。

    请注意,转换为因子变量后,模型结果的解释可能会有所改变。因此,在使用转换后的数据进行后续分析之前,建议仔细考虑转换的影响

    评论

报告相同问题?

问题事件

  • 系统已结题 6月16日
  • 修改了问题 6月8日
  • 创建了问题 6月8日

悬赏问题

  • ¥15 为什么eclipse不能再下载了?
  • ¥15 编辑cmake lists 明明写了project项目名,但是还是报错怎么回事
  • ¥15 关于#计算机视觉#的问题:求一份高质量桥梁多病害数据集
  • ¥15 特定网页无法访问,已排除网页问题
  • ¥50 如何将脑的图像投影到颅骨上
  • ¥15 提问一个关于vscode相关的环境配置问题,就是输入中文但是显示不出来,代码在idea可以显示中文,但在vscode不行,不知道怎么配置环境
  • ¥15 netcore使用PuppeteerSharp截图
  • ¥20 这张图页头,页脚具体代码该怎么写?
  • ¥20 WPF MVVM模式 handycontrol 框架, hc:SearchBar 控件 Text="{Binding NavMenusKeyWords}" 绑定取不到值
  • ¥15 需要手写数字信号处理Dsp三个简单题 不用太复杂