1.2.1-OpenMx中的结构方程建模: RAM(reticular Action Modeling)图路径方法 part1

RAM图形式介绍

根据理论分析绘制RAM图,是结构方程模型建模的起点,也是表达建模结果的最有效形式。

  • RAM图基本规定
    1.变量用大写英文希腊字母表示,其外围围以方框的是显变量,其外围围以椭圆的是隐变量残差小写希腊字母表示,外围亦应围以椭圆(但为方便起见,经常不用)
    2.路径用带箭头的线表示:
    直的单方向箭头:表示因果关系,箭头所指为果;
    双向箭头弧线:表示相关关系;
    从自身到自身的双向箭头线:表示变量的方差
    3.在每一条路径上以小写的英文或希腊字母表示待估计的结构系数或方差,以数字表示事先确定的固定参数
    4.在图中,凡为因果路径所指者,为内生变量,凡无如此箭头所指者为外生变量

本文原文地址http://dbtemp.blogspot.com/2011/08/structural-equation-modeling-in-openmx.html

假设我们采集了两项语言测试的数据:words(W)和 syntax (S),以及两个非语言测试的数据:blocks(B)和 pics(P),共80个人。
我们想要检验这些语言的测试是不是能够反应底层的语言能力verbal factor (V),以及非语言测试是否能够反应底层非语言的nonverbal factor(N),并且两个因素是完全独立的。这里需要注意的是,这里的样本量太小了,不足以检验这个假设,仅仅作为示例。
这个模型用路径图展示出来就非常清晰移动了,如下图所示。
下图是一个经典的结构方程模型,观测变量用方框表示,潜变量
用椭圆(圆)表示。单向箭头表示回归系数,双向箭头表示方差或协方差。

Path diagram for 2 factor model

结构方程模型旨在解释变量之间的关系,而不仅仅是变量的均值。我们用来检验模型的所有信息都来自于我们观测的变量之间的协方差矩阵。(此处应有link: null)结构方程模型让我们可以计算期望协方差矩阵,然后与观测到的矩阵进行比较。值得注意的,协方差矩阵的对角元素即为变量的方差(即,变量自身的协方差为其方差)。

如上图所示的路径图可以转换为一系列的结构方程,这些方程结合观测到的协方差矩阵可以用来估计路径的系数。任意两个变量之间协方差的期望都可以通过路径跟踪法则进行估计(path-tracing rules,详细请看这里),这个协方差的期望可以告诉我们哪几条路径应当乘起来并加到协方差计算公式中。
简言之,步骤为:

1.沿着路径箭头先向后追踪,然后向前,或者仅仅从一个变量沿着箭头方向向前而不向后追踪(当箭头变成向后时停止);
2.每条路径链上的每个变量只通过一次;
3.每条路径链上最多只通过一条双向箭头路径。

我们的模型则非常简单明了了。
例如:

  • W和S之间的协方差即为ab,我们沿着路径a反向追踪,然后通过V再沿着b正向追踪,然后将两个系数相乘。
  • W和B的协方差是0,因为这两个变量之间没有通路。
  • W的方差为a2 + e,其中e是模型不能解释的部分变异,也就是残差 (为何是a2?)
    作为练习,可以完成下表:
W S B P
W a2+e ab 0 0
S ab b2+f 0 0
B 0 0 c2+g cd
P 0 0 cd d2+h

RAM图路径方法可以通过矩阵代数计算模型中协方差的期望。通过制定路径图,可以得到三个矩阵:S,A和F。

  • A对应的是不对称的路径,即单箭头路径;
  • S对应的是对称路径(双箭头的路径),且矩阵是对称的;
  • F对应的是观测变量(如下)
    设定,所有观测变量为mobs, 所有的潜变量为mlat,则所有变量表示为mtot
    则有 mtot = mobs + mlat

则对于图中的模型,
A =

V N W S B P
V 0 0 0 0 0 0
N 0 0 0 0 0 0
W a 0 0 0 0 0
S b 0 0 0 0 0
B 0 c 0 0 0 0
P 0 d 0 0 0 0

S =

V N W S B P
V 1 0 0 0 0 0
V 0 1 0 0 0 0
W 0 0 e 0 0 0
S 0 0 0 f 0 0
B 0 0 0 0 g 0
P 0 0 0 0 0 h

值得注意的是,S矩阵中,第一行第一列(1,1)元素和第二行第二列(2,2)元素代表了潜变量V和N的变异,并且被固定为1。实际上,我们会把潜变量标准化,从而使得模型中需要估计的变量较少。
F矩阵的大小为mobs x mtot的大小,因此对于行列均为同一个变量时,矩阵元素为1;
F =

V N W S B P
W 0 0 1 0 0 0
S 0 0 0 1 0 0
B 0 0 0 0 1 0
P 0 0 0 0 0 1

至此我们定义了这些矩阵,则协方差矩阵的期望就可以通过下面的矩阵公式进行计算

F * (I-A)-1 * S * ((I-A) -1)' * F' (其中-1代表矩阵求逆,'代表转置)

其中,I为与A同大小的单位矩阵。


为了方便阅读,这里再放一个路径图:


Path diagram for 2 factor model

现在,我们假设上图中洗漱的真实值为:

|path|a|b|c|d|e|f|g|h|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|value|5|6|3|7|2|3|1|4|

则通过上述过程,我们应当可以得到协方差矩阵的期望值。即下表:

W S B P
W
S
B
P

现在,我们用OpenMx实现。

生成A,S和F矩阵。

1.首先生成空的6 x 6矩阵A。
myA=matrix(c(0),nrow=6,ncol=6)
2.然后修改矩阵myA
myA= edit(myA)
这是会弹出对话框,可以修改矩阵中的元素的值。
另一种方法是通过元素的位置下标来改变元素的值,如:
myA[3,1] = 5
最终A应当为:

A

同理,可以生成并修改S矩阵,
3. 生成S矩阵和单位I矩阵
由于S矩阵只在对角线上有值,因此我们首先生成一个对角单位阵。
myS = diag(1,6) #括号内第一个值(1)为对角元素的值,第二个值(6)为矩阵的大小(方阵)
由于RAM路径公式中有单位阵,因此这里,在修改S矩阵之前,我们先顺便生成一个矩阵
myI = myS
3. 修改S矩阵
同上;
最终S矩阵应为
S

F矩阵为:


F

接下来计算协方差的期望

F * (I-A)-1 * S * ((I-A) -1)' * F'
myF%*%solve(myI-myA)%*%myS%*%t(solve(myI-myA))%*%t(myF)

ExpCov
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,311评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,339评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,671评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,252评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,253评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,031评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,340评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,973评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,466评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,937评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,039评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,701评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,254评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,259评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,485评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,497评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,786评论 2 345

推荐阅读更多精彩内容