1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
Решение AnswerNet: 	100000190	
ПО:	 		SPSS Base 	

Создание файла ASCII с ковариационной матрицей 

Вопрос: Требуется записать файл формата ASCII с ковариационной матрицей
переменных. Как это сделать?
Ответ: Следующий код показывает, как можно создать текстовый файл с
ковариационной матрицей. Первая часть просто генерирует псевдо-
случайные нормальные переменные для примера. 
***********************************************************************. 

* ASCII-ФАЙЛ С КОВАРИАЦИОННОЙ МАТРИЦЕЙ ДЛЯ ЭКСПОРТА В ДРУГИЕ ПРОГРАММЫ*. 
***********************************************************************. 
********* СОЗДАДИМ 500 фиктивных наблюдений 40 переменных**************. 
INPUT PROGRAM. 
VECTOR V(40). 
LOOP #I=1 to 500. 
LOOP #I=1 to 40. 
COMPUTE V(#I)=NORMAL(15). 
END LOOP. 
END CASE. 
END LOOP. 
END FILE. 
END INPUT PROGRAM. 
***********************************************************************. 
********************* РАБОЧИЙ КОД НАЧИНАЕТСЯ ЗДЕСЬ*********************. 
***********************************************************************. 
******************* СТРОИМ КОРРЕЛЯЦИОННУЮ МАТРИЦУ *********************. 
CORRELATION /VARIABLES= V1 TO V40 
/MATRIX=OUT (*). 
********* ПРЕОРАЗУЕМ КОРРЕЛЯЦИОННУЮ МАТРИЦУ В КОВАРИАЦИОННУЮ***********. 
MCONVERT. 
***** ПОДПРАВИМ МАТРИЦУ И ЗАПИШЕМ ЕЁ В ФАЙЛ В ФОРМАТЕ 5F16.8 T ********. 
********* ЕСЛИ ТРЕБУЕТСЯ, ИСПОЛЬЗУЙТЕ ДРУГОЙ ФОРМАТ     ***************. 
DO IF (ROWTYPE_ = 'COV'). 
WRITE OUTFILE = 'C:\\TEMP\\ASCIICOV.DAT' RECORDS=8 / 1 V1 to V5 (5F16.8) 
/ 2 V6 TO V10 (5F16.8) 
/ 3 V11 to V15 (5F16.8) 
/ 4 V16 TO V20 (5F16.8) 
/ 5 V21 to V25 (5F16.8) 
/ 6 V26 TO V30 (5F16.8) 
/ 7 V31 to V35 (5F16.8) 
/ 8 V36 TO V40 (5F16.8). 
END IF. 
EXECUTE. 
* В ДАННОМ СЛУЧАЕ В ФАЙЛ БУДЕТ ЗАПИСАНО 320 СТРОК ПО 5 КОВАРИАЦИЙ В КАЖДОЙ*. 
Дата: 26.10.2000