26.4 Программы операций над матрицами

26.4 Программы операций над матрицами


Между двумя командами SPSS: MATRIX и END MATRIX можно поместить программу, позволяющую выполнять операции над матрицами. Для изучения этой возможности рассмотрим два примера.


Пётр пошёл за покупками в магазин и принёс домой 2 литра молока, 10 яиц, 3 плитки шоколада и 5 стаканчиков йогурта, за что он заплатил в сумме 11,80 грн. На следующий день Юля купила 1 литер молока, 15 яиц, 2 плитки шоколада и 4 стаканчика йогурта за 10,01 грн. После этого Николай заплатил 15,07 грн за 3 литра молока, 12 яиц, 5 плиток шоколада и 3 стаканчика йогурта, и, в конце концов, Лене 2 литра молока, 20 яиц, 5 плиток шоколада и 5 стаканчиков йогурта обошлись в 15,74 грн. И никто из них не принёс при этом расчётный чек из магазина. Мама хочет узнать, сколько же стоит каждый продукт в отдельности. Пётр, который учится в пятом классе, предложил решение при помощи системы линейных уравнений:



+


10В


+


зс


+


5D


1180


А


+


15В


+



+


4D


1001


ЗА


+


12В


+



+


3D


1507



+


20В


+



+


5D


1574


Юля, ученица восьмого класса, привила эти уравнения к матричному виду:


Николай записал эту матрицу в символьной форме:


АХ=С


и соответственно


X = А-1 С


Юля решает эту задачу в SPSS, для чего и пишет следующую программу:

MATRIX. 
 COMPUTE a={2 ,10 ,3,5;1,15,2,4;3,12,5,3;2,20,4,5}.  
 COMPUTE с={1180,-1001,-1507;1574} . 
  COMPUTE x=INV(a)*c. 
  PRINT x.  
 END MATRIX. 
  •  Чтобы выполнить эту программу выберите в меню File (Файл) Open (Открыть) Syntax... (Синтаксический)

  •  Выберите тип файлов Syntax (*.sps) (Синтаксис). На прилагаемом учебном диске найдите файл sabine.sps. В окне редактора синтаксиса появится необходимая нам программа.

  •  Выберите теперь Edit (Правка) Select All (Выделить всё)

  •  Начните выполнение программы нажатием кнопки Run Current (Выполнить текущее задание).

В окне просмотра появятся результаты расчёта: х


119,0000000


26,0000000


134,0000000


56,0000000


Теперь видно, что один литр молока стоит 1,19 грн, одно яйцо 0,26 грн, одна плитка шоколада 1,34 грн и один стаканчик йогурта 0,56 грн. Для написания программ, использующих операции с матрицами, существует множество различных инструкций и функций. Для выяснения их смысла, обращайтесь, пожалуйста, к первоисточнику по SPSS.


В следующем примере мы хотим запрограммировать начальный этап факторного анализа, а именно, рассчитать собственные значения корреляционной матрицы.

  •  Для этого примера используйте данные из файла ausland.sav, рассмотренного в гл. 19, и наберите в редакторе синтаксиса следующую SPSS-программу:

 CORRELATIONS VARIABLES=A1 
  TO A15/MATRIX=OUT (*) . 
 MATRIX. 
 MGET FILE=*/TYPE=CORR. 
 CALL eigen(cr,evec,ewerte) . 
 PRINT ewerte. 
 END MATRIX. 
  •  Выберите в меню Edit (Правка) Select All (Выделить всё)

  •  Начните выполнение программы нажатием кнопки со значком Run Current (Выполнить текущее задание).

После этого в окне просмотра будут показаны собственные значения; первые пять из них выглядят следующим образом:


EWERTE


5,146239283


1,945444977


1,414941459


,990117365


,935705222


Вычисленные собственные значения полностью соответствуют результатам, полученным в гл. 19.

6.gif

Изображение: