来源:香港中文大学侯杰泰教授讲座
方法一(使用LISREL创建数据系统文件)
1.在SPSS中创建 .sav 文件
(1)使用compute, recode 命令对数据进行编辑。
(2)把在LISREL中要用到的变量数据保存为file1.sav (文件名.sav)。
2.在LISREL中创建.dsf文件
(1)点击“file”菜单中的“Import External Data in Other Format”。
(2) “file of type”一项,选择“spss for window (*.sav)”; 通过恰当的路径选择“file1.sav”。
(3)现在看到一个表格,保存为file1.psf, (或其他设置的文件名,但LISREL并不读取.psf文件)。
(4)对.psf文件进行必要的“transformation”和“statistics”后,选择“statistics”菜单中的“Data Screening”,对数据进行扫描(现在已自动创建了LISREL程序所用的file1.dsf)。
3.在LISREL中创建.ls8文件
(1)点击“file”中的“new”建立新文件(也可以点击“open”打开旧文件)。
(2)在第一行,用“SY=file1.dsf”代替“DA”“ME”“KM”“SD”命令。
(3)例如:
SY=file1.dsf
MO NX=9 NK=3…
(4)把以上语句保存为p1.ls8 (文件名.ls8)。
(5)点击“run LISREL”运行程序。
方法二(使用SPSS输出纯文本格式的协方差距阵)
1. 假设已准备好.sav 文件,在SPSS中创建 .cov 文件(此文件可以采用“cov”或其他扩展名)
将任一变量作为因变量,LISREL程序要用到的其他变量作为自变量,做回归分析,SPSS程序如下:
regression
matrix=out(‘c:\SEM\file1.cov’)
/var=y1 y2 y3 x1 x2 x3
/desc=cov
/dep=y1/meth=enter y2 to x3.
execute.
2. 在SPSS中创建 .txt 文件
(1)读取上一步产生的协方差矩阵文件(这并不是一个txt文件,只有SPSS能读取并使用它)。
get file=’C:\SEM\file1.cov’.
(2)输出一个.txt 文件 (文件名.txt) 供LISREL使用。一定要有输出格式,如用F11.7,表示7位小数,总共11个数位(包括小数点)。
print format y1 to x3 (E13.5) .
print outfile=’C:\SEM\file1.txt’ /y1 to x3.
execute .
如果变量多,一行写不完,可以用下面的指令输出多行数据(第一行输出y1, y2, 第二行输出y3, x1, x2, x3):
print outfile=’C:\SEM\file1.txt’ /y1 y2 /y3 x1 to x3.
3.在记事本中去掉被试人数N
(1)在记事本中打开file1.txt,去掉N (N为被试人数;在回归中,用列删法会有p个“N”值,对删法会有p×p个“N”值)。
(2)保存为file1.txt。
4.在LISREL程序中,使用下面所示的指令句读入数据。即使在分析中不使用某些数据,也要依次读取ME,SD, KM。
DA NI=6 NO=249 MA=CM
ME FI=file1.txt
SD FI= file1.txt
KM FI= file1.txt FU
MO NX=6 NK=2…