应粉丝要求复现一篇4分的文章的stata的潜轨迹分析,文章题目是:Co-occurring sleep duration and weight-adjusted waist index and their associations with cardiovascular risk in older adults: a group-based dual-trajectory modelling study(老年人睡眠持续时间和体重调整后的腰围指数及其与心血管风险的相关性:一项基于群体的双轨模型研究)


文章使用到的是stata软件,需要用到的是traj包,需要使用stata17.0以上版本,本来我是想分两步走,先介绍stata17.0软件安装,然后介绍怎么分析,上一篇文章被stata官方投诉了,后面文章也被删掉了,因此stata17只能大家自己安装了,此插件一定要17以上版本才行。
安装好stata17以后,咱们来安装traj插件,使用一下代码就可以安装了
bash
net from http://www.andrew.cmu.edu/user/bjones/traj
net install traj, replace
怎么看得出安装成功了help traj能看到下面帮助页面就是安装成功了
bash
help traj

先下载数据
bash
use https://www.andrew.cmu.edu/user/bjones/traj/data/montreal_sim.dta, clear

做之前咱们看下它的参数列表:
traj开头,表示你做的是潜轨迹模型,
multgroups:你的分组数,多轨迹模型的多轨迹组的数量(2到6)。
var(varlist):因变量,在不同时间或年龄测量
indep(varlist)自变量,即测量因变量时
model(modeltype):模型的类型,在这里咱们选cnorm,删失正态
max(#)(cnorm所需)删失正态模型的最大值
order(numlist):0=截距,1=线性,2=二次,3=三次,4-四次,5-五次-每组轨迹的多项式类型,这里其实就是R中的多项式
bash
traj, var(qcp*op) indep(age*) model(cnorm) min(0) max(10) order(1 3 2)

得到模型的结果了之后就可以绘图了
bash
trajplot, xtitle(Age) ytitle(Opposition) xlabel(6(1)15) ylabel(0(1)6)

基本和文章一模一样,绘图后海可以显示分配的组和组成员的概率
bash
list _traj_Group - _traj_ProbG3 if _n < 3, ab(12)

获得一些详细的图形参数
bash
matrix list e(plot1), format(%9.2f) noheader

总的来说做起来还是很简单的,说明文件还介绍了一些其他的例子,有有兴趣的自己看一下。