Введение в циклы в SAS

SAS как аналитическое решение было создано в Университете штата Северная Каролина в 1970-х годах. В последующие десятилетия были разработаны дополнительные статистические процедуры, включающие более совершенные объектно-ориентированные библиотеки компонентов. В нынешних условиях SAS занимает почти 80 процентов всего рынка статистической аналитики.

Типичная программа SAS может быть разделена на два этапа, а именно шаг DATA и шаг PROC. Шаг DATA извлекает и помогает в манипулировании данными, тогда как шаг PROC имеет функции для анализа данных и выполнения аналитических действий с данными. Шаг данных может быть далее разделен на две фазы, которые являются фазами компиляции и выполнения.

Что такое петля?

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

Для Exit Controlled Loop компилятор проверяет Условия, связанные с завершением Loop. Во время выполнения цикла определенный процесс завершается, например, получение параметра или любого элемента из входных данных, анализ параметров или их изменение, после чего следует условие, которое проверяет предельное значение, например, является ли счетчик (флаг значение, связанное с циклом). Для условий, если они удовлетворены, последующая инструкция указывает последовательности вернуться к первой инструкции в последовательности и повторить последовательность. Как только условие достигнуто, поток компилятора перемещается в запрограммированные ветви команд, присутствующие вне цикла. Таким образом, цикл - это концепция программирования, которая обычно используется для уменьшения избыточности и сложности кода.

Петли в САС

Ниже приведен ряд циклов в SAS:

1. Повторяющиеся циклы

Do Loop, также известный как итеративные циклы Do, являются самой основной формой циклов, которые выполняются в наборе данных SAS в шаге данных SAS. Этот цикл является абсолютно безусловным по своей природе и выполняется в соответствии с определением для итерации по фиксированному количеству отсчетов или до тех пор, пока не получит ошибку, приводящую к пропуску потока с шага данных. Этот цикл находит свое применение в программах, используемых для итеративного подсчета, и в программах, связанных с повторяющимися математическими или статистическими вычислениями.

Синтаксис:

сделать я = п к м;

n и m - встречные переменные.

2. Условные циклы

Условные циклы в SAS - это другие циклы do, которые выполняются в шагах данных. Это в основном две петли, которые делают Пока и Делают до. Различие между циклами основано на том факте, что циклы Do While продолжают выполняться до тех пор, пока условие цикла не станет истинным, тогда как цикл Do Before будет выполняться до тех пор, пока указанное условие не останется ложным, и поток отойдет от цикла, как только условие становится ложным. Цикл «До» выполняется в нижней части цикла, тогда как цикл «В то время как» выполняется в верхней части цикла. Это дает основное различие между двумя циклами, которые Do Do будет выполнять по крайней мере один раз при использовании в программе, тогда как Do While может вообще не выполняться, как если бы условие не выполнялось, поток не войдет в итерацию Loops.

Синтаксис:

делать до (условие);

делать пока (условие);

Примеры циклов SAS

Попробуем понять концепцию циклов в SAS с помощью программ:

Пример 1: сделать цикл

программа

data Test;
money = 10000
do i = 1 to 10;
money = money - 1000;
output;
end;
run;

Выход

Деньгия
190001
280002
370003
460004
550005
640006
730007
820008
910009
10010

Объяснение:

В приведенном выше примере мы объявляем переменную (money), инициализированную значением 10000, программа перебирает счетчик, загруженный начальным значением 0, чтобы выполнить итерацию более 10 раз. Каждая итерация уменьшает значение переменной на 1000. Оператор вывода выполняется до окончания цикла.

Пример 2: делать во время цикла

программа

run;
data Test;
money = 10000;
newCounter = 0;
do while (money > 0);
money = money - 1000;
newCounter = newCounter + 1;
end;

Выход

ДеньгиnewCounter
1010

объяснение

В приведенном выше примере мы объявляем две переменные money и newCounter и инициализируем их значениями 10000 и 0 соответственно. Шаг данных выполняется до тех пор, пока значение денежной переменной не достигнет 0, что в данном случае занимает 10 итераций. За каждую итерацию переменная newCounter увеличивается на значение 1. Мы используем newCounter в качестве переменной счетчика в этой программе.

Пример 3: делать до цикла

программа

data Test;
money = 10000;
newCounter = 0;
do until (money > 0);
money = money - 1000;
newCounter = newCounter + 1;
end;
run;
Выход

ДеньгиnewCounter
1010

объяснение

В этом примере мы пытаемся воспроизвести функциональность примера цикла «пока», показанного выше, однако, используя цикл «до». Переменная money и newCounter инициализируются с начальным значением 10000 и 0 соответственно. До тех пор, пока цикл не будет выполнен при условии, что денежная переменная не равна нулю, выполнение потока выходит из цикла, как только значение переменной достигает нуля, что в этом случае занимает 10 итераций.

Вывод

Таким образом, мы определили различные типы циклов в SAS и объяснили их функциональные возможности на основе их потока управления. Однако недавно был разработан дополнительный цикл для сканирования индексированного массива. Однако его нельзя считать обычным циклом в SAS, поскольку он представляет собой составной цикл для выполнения итеративных операторов с переиндексированными переменными, такими как массив.

Рекомендуемые статьи

Это было руководство по Loops в SAS. Здесь мы обсудили введение Loops в SAS, Различные типы циклов с примерами. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Что такое язык программирования?
  2. Введение в циклы в C ++
  3. Руководство к тому, что такое SAS
  4. Петли в R
  5. Различные типы петель с их преимуществами
  6. Циклы в PowerShell | Типы и преимущества