* Многие макросы включают процедуры, выполнение которых требует открытого файла данных в редакторе, * даже если они и не используют данные. * Команда DATA LIST для определения новго файла не работает внутри макроса, но вместо неё можно использовать * матричный код для выполнения макроса при изначально пустом редакторе. * Данный макрос использует метод с матричным языком для генерации случайной нормально распределенной переменной. * Автор: Fernando Cartwright, Оттава, Канада. * 15.11.2004. NEW FILE. DEFINE mymacro (!POS !TOKENS(1)) /*начинаем матричный код*/ MATRIX. COMPUTE temp=1. COMPUTE mylength=(!1-1). /*Цикл по числу записей, указанных при вызове макроса*/ LOOP i=1 to mylength. COMPUTE temp={temp;1}. END LOOP. /*помещаем записи в открытый редактор данных*/ SAVE temp /outfile=* /variables=temp. END MATRIX. COMPUTE random=RV.NORMAL(0,1). EXECUTE. !END DEFINE. /*запускаем макрос, указывая, какое количество записей следует сгенерировать*/ mymacro 15.