Sas'ta do döngüleri i̇çin tam kılavuz


SAS’taki bir DO döngüsü, bir eylemi belirli sayıda gerçekleştirmek için kullanılabilir.

SAS’ta üç temel DO döngüsü vardır:

1. Döngüyü YAPIN

 data data1;
x = 0;
do i = 1 to 10;
   x = i*4;
   output ;
end ;
run ;

Ne yapar : Bu döngü i = 1’den 10’a kadar 10 yineleme gerçekleştirir; burada her satırın değeri i’nin 4 ile çarpımına eşittir.

Durduğunda : Bu döngü ancak 10 tekrardan sonra durur.

2. Döngü SIRASINDA YAPIN

 data data2;
x = 0;
do i = 1 to 10 while(x < 20 );
   x = i*4;
   output ;
end ;
run ;

Ne yapar : Bu döngü i = 1’den 10’a kadar 10 yineleme gerçekleştirmeye çalışacaktır; burada her satırın değeri i’nin 4 ile çarpımına eşittir.

Durduğunda : Bu döngü, x’in değeri 20’yi aştığında veya 10 iterasyon tamamlandığında (hangisi önce gerçekleşirse) duracaktır.

3. Döngüye kadar yapın

 data data3;
x = 0;
do i = 1 to 10 until(x > 30 );
   x = i*4;
   output ;
end ;
run ;

Ne yapar : Bu döngü i = 1’den 10’a kadar 10 yineleme gerçekleştirmeye çalışacaktır; burada her satırın değeri i’nin 4 ile çarpımına eşittir.

Durduğunda : Bu döngü, x’in değeri 30’u aştığında veya 10 iterasyon tamamlandığında (hangisi önce gerçekleşirse) duracaktır.

Aşağıdaki örnekler her DO döngüsünün pratikte nasıl kullanılacağını göstermektedir.

Örnek 1: DO döngüsü

10 satırlık bir veri seti oluşturmak için aşağıdaki DO döngüsünü kullanabiliriz:

 /*use DO loop to create dataset*/
data data1;
x = 0;
do i = 1 to 10;
   x = i*4;
   output ;
end ;
run ;

/*view dataset*/
proc print data =data1;

Sonuç, i sütunundaki değerlerin 1 ile 10 arasında, x sütunundaki değerlerin ise 4 ile 40 arasında değiştiği 10 satır içeren bir veri setidir.

Dizin sütununu veri kümesinden çıkarmak için drop i’yi kullanabileceğinizi unutmayın:

 /*use DO loop to create dataset*/
data data1;
x = 0;
do i = 1 to 10;
   x = i*4;
   output ;
end ;
drop i;
run ;

/*view dataset*/
proc print data =data1; 

Örnek 2: DO WHILE döngüsü

i = 1’den 10’a kadar i değişkenine sahip bir veri kümesi oluşturmak için aşağıdaki DO WHILE döngüsünü kullanabiliriz; burada her satırın değeri i’nin 4 ile çarpımına eşitken x 20’den küçüktür :

 /*use DO WHILE loop to create dataset*/
data data2;
x = 0;
do i = 1 to 10 while (x < 20 );
   x = i*4;
   output ;
end ;
run ;

/*view dataset*/
proc print data =data2; 

xa 20’ye ulaştığında döngünün satır oluşturmayı durdurduğunu unutmayın.

Örnek 3: DO UNTIL döngüsü

i = 1’den 10’a kadar i değişkenine sahip bir veri seti oluşturmak için aşağıdaki DO UNTIL döngüsünü kullanabiliriz; burada x 30’dan büyük olana kadar her satırın değeri i’nin 4 ile çarpımına eşittir:

 /*use DO UNTIL loop to create dataset*/
data data3;
x = 0;
do i = 1 to 10 until (x > 30 );
   x = i*4;
   output ;
end ;
run ;

/*view dataset*/
proc print data =data3; 

x 30’u aştığında döngünün satır oluşturmayı durdurduğunu unutmayın.

Ek kaynaklar

Aşağıdaki eğitimlerde SAS’ta diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

SAS’ta veriler nasıl normalleştirilir?
SAS’ta kopyalar nasıl kaldırılır
SAS’ta eksik değerler sıfırla nasıl değiştirilir?

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir