Иллюстрированный самоучитель по SPSS 10/11

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

Между двумя командами 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В + 3C + 5D 1180
А + 15В + + 4D 1001
ЗА + 12В + + 3D 1507
+ 20В + + 5D 1574

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

Иллюстрированный самоучитель по SPSS 10/11 › Программирование › Программы операций над матрицами

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

AX = C

И соответственно:

X = A - 1 C

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

MATRIX
COMPUTE a = {
    2, 10, 3, 5;
    1, 15, 2, 4;
    3, 12, 5, 3;
    2, 20, 4, 5
}
COMPUTE c = {
    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
0.990117365
0.935705222

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

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.