如何用潜类别混合效应模型(Latent Class Mixed Model ,LCMM)分析老年痴呆年龄数据

news2025/1/17 12:11:38

全文下载链接:http://tecdat.cn/?p=24647

线性混合模型假设 N 个受试者的群体是同质的,并且在群体水平上由独特的曲线 Xi(t)β 描述点击文末“阅读原文”获取完整代码数据

相关视频

背景和定义

相比之下,潜在类别混合模型在于假设人口是异质的,并且由 G 潜在类别的受试者组成,其特征是 G 平均轨迹曲线。

潜类别混合模型

潜在类别成员由离散随机变量 ci 定义,如果主题 i 属于潜在类别 g (g = 1, …,G),则该变量等于 g。变量 ci 是潜在的;根据协变量 Xci 使用多项逻辑模型描述其概率:

2aeaa8691a06c4e8a651daca32366273.png

其中 ξ0g 是 g 类的截距,ξ1g 是与时间无关协变量 Xci 的 q1 向量相关的类特定参数的 q1 向量。当没有协变量预测潜在类成员资格时,该模型将简化为特定于类的概率。

后验分类

在涉及潜在类别的模型中,可以对每个潜在类别中的主体进行后验分类。它基于类成员概率的后验计算,用于表征对象的分类以及评估模型的拟合优度(Proust-Lima et al. 2014  ).

使用贝叶斯定理计算后类成员概率作为给定收集信息的潜在类的概率。在纵向模型中,它们为主题 ii 和潜在类别 g 定义为:

aa943dd472e5fb49de34d77e6210283a.png

其中:  θ^G 是 G 潜在类模型中估计的参数向量。

高斯数据示例

在此示例中,我们研究了认知标记的二次轨迹,即在老年人样本(纳入时年龄 65 岁及以上)中进行预先标准化(具有高斯分布)并对简易智能量表评分 ( MMSE )进行了长达 15 年的跟踪研究,可根据教育水平进行调整。尽管可以考虑任何回归,但模型在此处不考虑交互作用。

数据集

子样本

这是来自原始前瞻性研究 的 500 名受试者的子样本。该数据集不能用于流行病学目的,因为子样本不代表原始队列(特别是痴呆病例已被过度采样)。

用于可视化数据(仅限表头):

head(data)

0880460b810669d2357e029d5ca0bfa8.png

在不同的时间收集不同的标记。在数据集中,时间尺度是年龄。

获取数据的快速摘要:

summary(data)

c9baf8ac06eb66ad54e36f03c72c93e9.png

一些变量有缺失值。

简易智能量表评分结果

简易智能量表评分通常被视为结果。简易智能量表评分是一种非常常见的神经心理学测试,用于测量老年人的整体认知功能。它具有非常不对称的分布,因此通常将其归一化以应用于高斯变量的方法。预归一化函数完成的:

hist( MMSE )

hist( norm )

b5f29d3fde0aec2de1bfe04c21c9758b.png

要建模单个重复测量是:

color <-ID

xyplot

64223cbd7e1644416b44b739d870e1aa.png

考虑的模型

我们考虑以下潜在类线性混合模型,其中 g 表示类别,i表示主题,j 表示重复测量:

fe64d784b5d62974eab4ddd3101eaed7.png

其中_:_

ff764eac97593752f8050b316e69e0de.png 和 3c345c46ab39904f6b0d5152aa02d615.png

固定效应部分 是 5634631d936328a67285c1c18f2de30b.png 混合 0aa6f07ac79350a20c6234eee4e263e5.png 和 cd8e8a78517d7b5fc492ba0cd6ea48fa.png; 在 随机效应部分 是 53db11103b24defc4ef5a44c75101907.png,

因变量:归一化 简易智能量表评分

由于 简易智能量表评分的分布非常倾斜,我们使用标准化版本

normMMSE <- norm

估计只有一个类的模型 (G=1)

根据年龄进行分析。为了避免任何数值问题,我们重新调整和标准化年龄:

age65 <- (age - 65)/10

我们为 norm 拟合线性混合模型:

lme(norm ~ age65+I(age65^2)+CEP rand =~ age65+I(age65^2) subject = 'ID'

估计具有多个类的模型 (G > 1)

从通过假设单个潜在类估计的模型,我们现在可以搜索异构概况。下一行提供了使用  G>1 时初始值对 2 个潜在类的模型的估计。

#考虑到2类的估计
lme(ng = 2, mix=~age65+I(age65^2))

初始值

初始值在参数中指定 B。该选项会 B=m1 根据 1 类模型(此处为m1)的最大似然估计自动生成初始值 。不指定B 或 不指定 B=NULL 是不推荐的,因为它会导致 G=1G=1 的模型的内部预估计(即 m1),这可能会显着增加计算时间。


点击标题查阅往期内容

8061f8da50d5cd106c7cae49146a89f7.png

R语言如何用潜类别混合效应模型(LCMM)分析抑郁症状

outside_default.png

左右滑动查看更多

outside_default.png

01

a94c00eb24b48eecb6d35eea19f91df5.png

02

103931693d5d781003966e134e756aee.png

03

ce9952fc31cb5943815eef19ee99fd28.png

04

03929318ceaea07fe7776d5f562929b1.png

用户预先指定的值

在以下示例中,初始值由用户预先指定:方差协方差的参数取自线性混合模型的估计值,并针对特定于类尝试任意初始值:

lme( B = c(0, 50, 30, 3, -1))

随机生成的值

另一种方法是从 1 类模型的估计值的渐近分布中随机生成初始值(此处为 m1):

lme(rand(m1))

网格搜索

最后,grid可用于运行自动网格搜索。在接下来的示例中,G=2 和 G=3 类, hlme 从 100 个初始值的随机向量运行最多 30 次迭代。然后,仅针对在 30 次迭代后提供最佳对数似然的偏离完成估计程序。

grid(lme iter=30,)

推荐使用此方法,因为它可以在重复次数足够大且迭代次数相当大时更好地探索参数空间。

选择最佳模型

一组模型(通常具有不同数量的潜在类)的估计过程可以用 来概括 summary

summary

c28f0cb85fd61525a62801f2225b4b93.png

我们在这里总结了我们之前估计的 6 个模型。我们可以看到所有的 2-class 模型都收敛于同一个估计点。

这个例子说明了定义“潜在类的最佳数量”的复杂性。事实上,根据推荐的 BIC,应该保留 2 类模型(因为它提供了最低值)。但是 AIC 和 Size 调整 BIC(涉及较小的惩罚)都支持 3-class 模型。熵也有利于 3 类模型,因为它具有更好的判别能力(熵接近 1)。最后,3-class 模型创建了一个非常小的类,这通常不是那些搜索和感兴趣的异质性。在这个例子中,根据统计和临床标准,2-或 3-可以保留类模型。下面,我们保留了最终输出描述的 2-class 模型。

2-class 线性混合模型的描述

模型概要

summary(m2d)

19b7083d535b87d7298473bb0cc1c3de.png

487f6b78504d3f008a591e338651614f.png

d5c434740c688105cc7e4c987340529b.png

136d57f7ca9f39618ab4feb9de0a61c4.png

模型的预测

只要模型中指定的所有协变量都包含在数据框中,就可以为数据框中包含的任何数据计算特定于类的预测。在接下来的几行中,通过生成年龄值介于 65 和 95 之间的向量并将 CEP定义为 1 或 0,来创建这样的数据框 。计算和绘制 预测 。

data.frame(age=seq(65,95,l=50))

在点估计中为每个类计算预测:

predictY

然后可以绘制预测:

plot(prd0)

plot(prd1,add=TRUE)

f1ab58b444184500d5793777076c8f7a.png

如果我们想了解可变性,我们可以计算具有置信区间的预测并绘制它们:

plot(IC,, shades=TRUE)

f2a99666e42bee8aa7e2cf4034406ff7.png

最后,1 类、2 类和 3 类模型的预测轨迹可以一起表示在下图中:

par(mfrow=c(1,3))

plot(pr1 )

plot(pr0  

plot(pr3)

cd75bea8a4722fa1dc0556f74d9c07be.png

最终潜在类混合模型的评估

残差图

plot(m)

5b73279cec0416cc7d0cb4be9adcedc3.png

预测与观察的图表

为了评估所选模型的拟合,我们同时绘制每个潜在类别的观察值和预测值。

plot(m, shad = TRUE)

2de36ce309a6d7a970c46e81ae5cb9be.png

该图在此处显示了对数据的非常好的拟合。

分类

模型的后验分类通过以下方式获得:

postprob(m2d)

6e28877780b1d66e2a4805ec23777387.png

af0aa38b5b5dfb3fe6c05139a4656436.png

Class 1 由 62 个样本 (12.4%) 组成,而 438 个样本属于第二类。

我们还可以通过以下方式查看有关模型辨别能力的信息:

  • 后验分类表:分类在 class 1 (resp.  class 2) 中的对象属于该类的平均概率为 0.8054 (resp. 0.8730)。这显示了类别的良好区分。

  • 高于阈值的分类的比例:这里 90.18%(分别为 61.29%)的第 1 类(分别为 2)的后验概率大于 70%。


e39e72187ffd006cb0fe5acc5ee05fc7.png

本文摘选《R语言潜类别混合效应模型(Latent Class Mixed Model ,LCMM)分析老年痴呆年龄数据》,点击“阅读原文”获取全文完整资料。

a96936607c6166e82f1bcf0dd138ebc3.jpeg

本文中分析的数据分享到会员群,扫描下面二维码即可加群!

744f2955ab647ff0e373b9ae73cdb4c7.png

点击标题查阅往期内容

R语言贝叶斯广义线性混合(多层次/水平/嵌套)模型GLMM、逻辑回归分析教育留级影响因素数据

R语言估计多元标记的潜过程混合效应模型(lcmm)分析心理测试的认知过程

R语言因子实验设计nlme拟合非线性混合模型分析有机农业施氮水平

R语言非线性混合效应 NLME模型(固定效应&随机效应)对抗哮喘药物茶碱动力学研究

R语言用线性混合效应(多水平/层次/嵌套)模型分析声调高低与礼貌态度的关系

R语言LME4混合效应模型研究教师的受欢迎程度

R语言nlme、nlmer、lme4用(非)线性混合模型non-linear mixed model分析藻类数据实例

R语言混合线性模型、多层次模型、回归模型分析学生平均成绩GPA和可视化

R语言线性混合效应模型(固定效应&随机效应)和交互可视化3案例

R语言用lme4多层次(混合效应)广义线性模型(GLM),逻辑回归分析教育留级调查数据

R语言 线性混合效应模型实战案例

R语言混合效应逻辑回归(mixed effects logistic)模型分析肺癌数据

R语言如何用潜类别混合效应模型(LCMM)分析抑郁症状

R语言基于copula的贝叶斯分层混合模型的诊断准确性研究

R语言建立和可视化混合效应模型mixed effect model

R语言LME4混合效应模型研究教师的受欢迎程度

R语言 线性混合效应模型实战案例

R语言用Rshiny探索lme4广义线性混合模型(GLMM)和线性混合模型(LMM)

R语言基于copula的贝叶斯分层混合模型的诊断准确性研究

R语言如何解决线性混合模型中畸形拟合(Singular fit)的问题

基于R语言的lmer混合线性回归模型

R语言用WinBUGS 软件对学术能力测验建立层次(分层)贝叶斯模型

R语言分层线性模型案例

R语言用WinBUGS 软件对学术能力测验(SAT)建立分层模型

使用SAS,Stata,HLM,R,SPSS和Mplus的分层线性模型HLM

R语言用WinBUGS 软件对学术能力测验建立层次(分层)贝叶斯模型

SPSS中的多层(等级)线性模型Multilevel linear models研究整容手术数据

用SPSS估计HLM多层(层次)线性模型模型 

欲获取全文文件,请点击左下角“阅读原文”。

6444a674dca1ca70404215f4bde76882.gif

d8fdf044cb8aa068e4bf35d94b5af61f.png

1dfa385b79dde998590f213a25b65ca6.jpeg

7534eaf814af45a661828208a067da9f.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/44613.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

国鸿氢能冲刺港股:年亏损7亿 云浮工业园与青岛城投是股东

雷递网 雷建平 11月28日国鸿氢能科技&#xff08;嘉兴&#xff09;股份有限公司&#xff08;简称&#xff1a;“国鸿氢能”&#xff09;日前递交招股书&#xff0c;准备在港交所上市。年亏损7亿国鸿氢能成立于2015年6月&#xff0c;是一家以氢燃料电池为核心产品的企业&#x…

MySQL监控主从复制

show slave status; show slave status; 不够准确 使用下面的

JetpackCompose从入门到实战学习笔记3——Text的简单使用

JetpackCompose从入门到实战学习笔记3——Text的简单使用 上一篇文章我们讲解了modifier的一些简单用法&#xff0c;本篇就开始讲解基础控件Text的一些简单用法. 1.源码分析&#xff1a; Composable fun Text(text: AnnotatedString,//要显示的文本modifier: Modifier Modi…

【PAT乙级】一百一十道真题刷后大汇总——C/C++

技巧总结避免精度丢失查询数据是否存在容器之间的比较是否相等缓存区中字符残留问题巧妙输入巧妙使用hash数组简单数学质数俩数最大公约与最小公倍数因子常用的头文件及其内部函数< map >< set >< pair >< string >< vector >< algorithm >…

算法排序基础(全版)

一、简单排序 这大概是我整理的最全的有关算法排序的内容啦&#xff01;欢迎大家前来学习&#xff0c;同时也希望多多支持一下博主哦&#xff01; ​ 在我们的程序中&#xff0c;排序是非常常见的一种需求&#xff0c;提供一些数据元素&#xff0c;把这些数据元素按照一定的规则…

【C++ STL容器】:vector存放数据以及存放自定义的数据类型

前言 时不可以苟遇&#xff0c;道不可以虚行。 STL 中最常用的容器为&#xff1a;vector&#xff0c;暂且把它理解为我们之前学过的数组Array。 一、创建一个vector容器&#xff08;数组&#xff09; 添加头文件&#xff1a;#include <vector> vector<int> v;二、…

VauditDemo靶场代码审计

靶场搭建 将下载好的VAuditDemo_Debug目录复制到phpstudy的www目录下&#xff0c;然后将其文件名字修改成VAuditDemo&#xff0c;当然你也可以修改成其他的 运行phpstudy并且访问install目录下的install.php&#xff0c;这里我访问的是http://127.0.0.1/VAuditDemo/install/in…

Linux 性能分析工具- Atop安装和使用

Atop下载&#xff1a;Atoptool.nl 安装时&#xff0c;可能会出现报错&#xff1a;error: Failed dependencies 提示很需要安装python3&#xff0c;所以yum -y install python3&#xff0c;然后再装atop就没问题了。 atop 常用命令 您可在打开日志文件后&#xff0c;使用以下命…

R语言使用马尔可夫链对营销中的渠道归因建模

介绍 在这篇文章中&#xff0c;我们看看什么是渠道归因&#xff0c;以及它如何与马尔可夫链的概念联系起来。最近我们被客户要求撰写关于马尔可夫链的研究报告&#xff0c;包括一些图形和统计输出。我们还将通过一个电子商务公司的案例研究来理解这个概念如何在理论上和实践上…

QT开发教程:QScroller实现home界面滑动效果

在上章我们学习了QScroller实现home界面滑动效果,但是该界面是实现的上下滑动效果,如果想模拟手机home滑动界面,则需要实现左右滑动效果. 本章,则重写QStackedWidget类,来真正的模拟手机,来实现home界面左右滑动效果. 1.SmoothStackedWidget类实现 demo界面如下图所示(创建了…

[附源码]计算机毕业设计springboot第三方游戏零售平台

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

Discourse 在 2022-11 的最新版本中提供了新的边栏

官方有关这个边栏的说明和解释文章请参考链接&#xff1a; Try out the new sidebar and notification menus! - announcements - Discourse Meta 中的内容。 在这个新设计的边栏中包含了一些所有人都需要使用的快捷链接&#xff0c;同时还包括一些定义的快捷分类链接和 Tag 链…

haproxy keepalive实践

1 安装haproxy wget http://download.openpkg.org/components/cache/haproxy/haproxy-2.6.6.tar.gz tar -zxvf haproxy-2.6.6.tar.gz cd haproxy-2.6.6 mkdir -p /app/haproxy # 安装依赖,解决haproxy.c:80:31的问题 sudo yum -y install gcc openssl-devel pcre-devel system…

【Python】一、Python程序运行方式

文章目录实验目的一、熟悉Python的安装二、熟悉PyCharm安装三、启动IDLE&#xff0c;进入Python Shell&#xff0c;熟悉环境&#xff0c;运行教材案例&#xff1a;输出“hello world&#xff01;”四、打开“命令提示符”窗口&#xff0c;使用pip安装管理pygame、numpy等第三方…

算法训练Day30 回溯算法专题 | LeetCode332. 重新安排行程;51.N皇后(棋盘问题);37.解数独(二维的递归)

前言&#xff1a; 算法训练系列是做《代码随想录》一刷&#xff0c;个人的学习笔记和详细的解题思路&#xff0c;总共会有60篇博客来记录&#xff0c;计划用60天的时间刷完。 内容包括了面试常见的10类题目&#xff0c;分别是&#xff1a;数组&#xff0c;链表&#xff0c;哈…

android 自定义view: 跑马灯-光圈

本系列自定义View全部采用kt **系统: **mac android studio: 4.1.3 **kotlin version:**1.5.0 gradle: gradle-6.5-bin.zip 本篇效果: 前沿 最近在bilibili看到一个跑马灯光圈效果挺好, 参考着思路写了一下. bilibili地址,美中不足的是这是html代码 QaQ 实现思路 将效果…

Spark系列之Spark启动与基础使用

title: Spark系列 第三章 Spark启动与基础使用 3.1 Spark Shell 3.1.1 Spark Shell启动 安装目录的bin目录下面&#xff0c;启动命令&#xff1a; spark-shell$SPARK_HOME/bin/spark-shell \ --master spark://hadoop10:7077 \ --executor-memory 512M \ --total-executor-…

长短期记忆网络(LSTM)重点!(自己汇集了很多资料在这篇博客)

文章目录参考资料推荐基础知识评论区精髓代码实现底层实现简洁实现参考资料推荐 心心念念 学了这么久 &#xff0c;终于学到第57集了。 参考一篇掘金的图文LSTM 李宏毅老师的手撕视频配套课件 27:39 开始手撕 看完了李沐老师的LSTM又去找了李宏毅老师的课程然后发现又多了个导…

西门子机床联网

一、设备信息确认 1、确认型号 数控面板拍照确认&#xff1a; 此系统为&#xff1a;西门子828D 还有一种情况是面板无任何版本信息&#xff0c;这时就需要进入系统里面再确认。 2、确认通讯接口 1、数控面板的后面 X130为网络标号 2、其他位置 其他位置一般是前面位置用…

H3C mstp+vrrp实验 新华三杯拆解

H3C mstpvrrp实验一、实验拓扑二、实验要求局域网规划&#xff1a;可靠性&#xff1a;三、实验配置&#xff08;一&#xff09;链路聚合1.创建链路聚合组2.检查&#xff08;二&#xff09;VLAN1.创建vlan2.放行vlan3.检查&#xff08;三&#xff09;MSTP1.配置MSTP域2.配置主备…