lmer 错误:分组因子必须 < 观察数

2023-11-26

我正在尝试对某些数据运行混合效应模型,但与其中一个固定效应作斗争,我认为这主要是由于它的一个因素?!

样本数据:

data4<-structure(list(code = structure(1:10, .Label = c("10888", "10889", 
"10890", "10891", "10892", "10893", "10894", "10896", "10897", 
"10898", "10899", "10900", "10901", "10902", "10903", "10904", 
"10905", "10906", "10907", "10908", "10909", "10910", "10914", 
"10916", "10917", "10919", "10920", "10922", "10923", "10924", 
"10925", "10927"), class = "factor"), speed = c(0.0296315046039244, 
0.0366986630049636, 0.0294297725505692, 0.048316183511095, 0.0294275666501456, 
0.199924957584131, 0.0798850288176711, 0.0445886457047146, 0.0285993712316451, 
0.0715158276875623), meanflow = c(0.657410742496051, 0.608271363339857, 
0.663241108786611, 0.538259450171821, 0.666299529534762, 0.507156583629893, 
0.762448863636364, 37.6559178370787, 50.8557196935557, 31.6601587837838
), length = c(136, 157, 132, 140, 135, 134, 144, 149, 139, 165
), river = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L
), .Label = c("c", "f"), class = "factor")), .Names = c("code", 
"speed", "meanflow", "length", "river"), row.names = c(2L, 4L, 
6L, 8L, 10L, 12L, 14L, 16L, 18L, 20L), class = "data.frame")

我的模型是这样的:

model1<-lmer(speed ~ river + length +(1|meanflow)+(1|code), data4)

当运行返回错误消息时:

Error in checkNlevels(reTrms$flist, n = n, control) : 
number of levels of each grouping factor must be < number of observations

在互联网上搜寻后我有找到一个回复

但我一生都不明白这个问题的答案!


你这里有两个问题:

  • 看起来您对每个值都有一个观察结果code。这意味着您无法估计残差方差(内置于lmer,以及更一般的线性混合模型)和一个中间-code方差——这两个参数都将尝试估计相同的方差分量,以及以下参数的任意组合var(residual) and var(code)加起来相同的值将表示与数据同样良好的拟合。

  • 您还对每个值都有一个观察meanflow;这是因为meanflow是一个连续变量,您通常不想将其用作分组变量在模型中。我不确定你想用这个术语来表达什么。

如果您坚持使用,实际上可以拟合这些模型lmerControl绕过检查,但你不一定会得到合理的结果!

model2 <- lmer(speed ~ river + length +(1|meanflow)+(1|code), data4,
    control=lmerControl(check.nobs.vs.nlev = "ignore",
     check.nobs.vs.rankZ = "ignore",
     check.nobs.vs.nRE="ignore"))

这里方差大约被分成三等分:

 VarCorr(model2)
 ##  Groups   Name        Std.Dev.
 ##  meanflow (Intercept) 0.035354
 ##  code     (Intercept) 0.032898
 ##  Residual             0.033590

如果我们只使用一种(仍然不合适的)随机效应,

model0 <- lmer(speed ~ river + length +(1|meanflow), data4,
    control=lmerControl(check.nobs.vs.nlev = "ignore",
     check.nobs.vs.rankZ = "ignore",
     check.nobs.vs.nRE="ignore"))

现在方差被精确地分成两半:

VarCorr(model0)
##  Groups   Name        Std.Dev.
##  meanflow (Intercept) 0.041596
##  Residual             0.041596
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

lmer 错误:分组因子必须 < 观察数 的相关文章

随机推荐

  • Web应用程序:框架还是不框架?

    我了解 PHP 并且刚刚开始使用 MySql 但计划使用 ODBC 我不需要任何书籍来解释这一点 我可能有资格开发一个简单的网站 但目标是开发相当雄心勃勃的应用程序 我想几乎所有的网络应用程序都有一些共性 比如安全性 可扩展性等 例如 我完
  • will_paginate 报告太多条目和页面

    我使用 will paginate 来显示从包含联接和 select 语句的查询返回的数据 当我对数据进行分页时 条目数等于执行 select 语句之前的条目数 即使在查询之后调用分页 并且查询包含的元素比分页报告少 sales Sale
  • 如何更改 Octave 中的工具包?

    当我执行时我的 Octave 崩溃了plot命令 我找到了一个解决方案阿萨德 易卜拉欣的回答 他提到将默认工具包切换为gnuplot 并将其更改为octave rc文件 如果我想永久进行更改 但我不清楚永久更改octaverc 当我打开我的
  • 将字符串数据从线程发送到主窗体

    在Dephi中 我创建一个线程 像这样 它会不时向主窗体发送消息 Procedure TMyThread SendLog I Integer Var Log array 0 255 of Char Begin strcopy Log PCh
  • 如何在两个屏幕之间使用块模式

    我的 main dart 文件如下所示 home MultiBlocProvider providers BlocProvider
  • 在同一上下文中使用 Spring Boot 2 OAuth 客户端和资源服务器

    我希望我的 Spring Boot 应用程序能够为受保护的前端提供服务 同时作为该前端的 API 资源服务器 但我无法让 oauth 的东西正常工作 我想要的是当浏览器请求没有令牌的index html时 Spring Boot应用程序返回
  • NSTextField 点击率?

    我有一个静电NSTextField它覆盖了我的 OS X 应用程序中的一条大错误消息 我试图让它允许用户单击其下方的控件 在 IB 中 我取消选中 启用 并选中 拒绝第一响应者 我也在代码中完成了它 因为那不起作用 largeErrorTe
  • 是否建议在 helm 之后使用 kustomize ?

    有时 当我使用 helm 图表时 并非所有我想要修改的内容都可以与给定值一起使用 使用 kustomize 修改渲染的 Helm Chart 是否实用 像这样 图表 gt helm 模板 gt kustomize gt kubectl 部署
  • 通信链路故障 - 从服务器成功接收的最后一个数据包是[重复]

    这个问题在这里已经有答案了 我知道这个问题以前已经被问过 并且有很多解决方案 但它们都不适合我 而且对我来说有点不同 我有一台带有数据库的服务器 该数据库通过隧道连接到其他服务器 运行ubuntu 1310和1204的服务器没有任何问题 但
  • 检测并排除 pandas DataFrame 中的异常值

    我有一个只有几列的熊猫数据框 现在我知道某些行是基于特定列值的异常值 例如 柱子Vol所有值都在 12xx 左右 其中一个值为 4000 异常值 我想排除那些有Vol像这样的专栏 因此 本质上我需要在数据框中放置一个过滤器 以便我们选择特定
  • Android:如何确定有多少客户端绑定到一个服务?

    在Android服务中 有没有办法确定有多少客户端绑定到它 没有 API 可以查明有多少客户端绑定到某个服务 如果您正在实现自己的服务 那么在 ServiceConnection 中 您可以增加 减少引用计数以跟踪绑定客户端的数量 以下是一
  • 当我在 jupyter 笔记本中使用 matplotlib 时,它总是引发“matplotlib 当前正在使用非 GUI 后端”错误?

    import matplotlib pyplot as pl matplot inline def learning curves X train y train X test y test Calculates the performan
  • WPF 编译错误“IDictionary 必须具有 Key 属性”

    我已经创建了想要在 WPF 应用程序的多个 xaml 页面中使用的控件样式 为此 我创建了一个 Resources xaml 并在其中添加了样式 然后在我的页面中添加此代码
  • 长按android中textview中的选定文本[关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 在我的 Android 应用程序中 我有一个文本视图和一些文本 我希望用户在长按单词时可以在工具提示框中看到单词的含义 我的问题是我不知道如何在单词中实现长按 有人可以帮助我吗 抱歉
  • 无法在 IE 中的输入字段上设置只读

    我有一个简单的输入字段
  • 如何在Python中制作自然数的螺旋? [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 I want to make a function that I give it a number and the function returns a spiral from 1
  • 选择处理指令的 XPath 表达式是什么?

    我在用着xsl stylesheet我的 XML 中的处理指令 无论如何可以使用 XPath 选择这个 PI 吗 如果是这样怎么办 一般来说 可以使用以下命令来选择处理指令processing instruction 节点测试 更具体地说
  • 在 python 多处理池中共享 numpy 数组

    我正在编写一些代码 这些代码对大量 数万到数十万个数值积分 问题集进行了一些相当繁重的数值工作 幸运的是 这些集成是极其并行的 因此可以轻松使用 Pool map 将工作分配到多个核心上 现在 我有一个具有以下基本工作流程的程序 usr b
  • 使用 EF 6 和 Oracle.ManagedDataAccess 时表不存在

    我正在使用 EF 创建 MVC 应用程序6 0 0 0和ODP NetOracle ManagedDataAccess版本4 121 2 0用于数据访问 In my Controller called EmployeeController
  • lmer 错误:分组因子必须 < 观察数

    我正在尝试对某些数据运行混合效应模型 但与其中一个固定效应作斗争 我认为这主要是由于它的一个因素 样本数据 data4 lt structure list code structure 1 10 Label c 10888 10889 10