Sas'ta if-then-else kullanımı (örneklerle)


Bir koşulun doğru olması durumunda bir değer döndürmek için SAS’ta IF-THEN-ELSE ifadesini kullanabilirsiniz; aksi takdirde , koşul doğru değilse başka bir değer döndürmek için kullanabilirsiniz.

Bu ifade aşağıdaki temel sözdizimini kullanır:

 if var1 > 30 then var2 = 'good';
else var2 = 'bad';

Ayrıca, daha fazla koşula dayalı olarak daha fazla potansiyel değer döndürmek için birden fazla ELSE IF ifadesini birbirine zincirleyebilirsiniz:

 if var1 > 35 then var2 = 'great';
else if var1 > 30 then var2 = 'good';
else var2 = 'bad';

Aşağıdaki örnekler, bu ifadelerin her birinin pratikte SAS’taki aşağıdaki veri kümesiyle nasıl kullanılacağını gösterir:

 /*create dataset*/
data original_data;
    input team $points;
    datalines ;
Cavs 12
Cavs 14
Warriors 15
Hawks 18
Mavs 31
Mavs 32 
Mavs 35
Celtics 36
Celtics 40
;
run ;

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

Örnek 1: SAS’ta IF-THEN-ELSE

Puan sütunundaki değer 30’dan büyükse “iyi” değerini, değilse “kötü” değerini alan, derecelendirme adı verilen yeni bir değişken oluşturmak için aşağıdaki IF-THEN-ELSE ifadesini kullanabiliriz:

 /*create new dataset with new variable called rating*/
data new_data;
    set original_data;
    if points > 30 then rating = 'good';
    else rating = 'bad';
run ;

/*view new dataset*/
proc print data =new_data; 

Derecelendirme adı verilen yeni sütunun, puan sütununun değeri 30’dan büyükse “iyi” değerini, aksi takdirde “kötü” değerini aldığını unutmayın.

Örnek 2: SAS’ta IF-THEN-ELSE IF

Aşağıdaki değerleri alan, derecelendirme adı verilen yeni bir değişken oluşturmak için aşağıdaki IF-THEN-ELSE IF ifadesini kullanabiliriz:

  • Puanlar 35’ten büyükse “süper”
  • aksi takdirde puanlar 30’dan büyükse “iyi”
  • aksi halde “kötü”

Aşağıdaki kod bunun nasıl yapılacağını gösterir:

 /*create new dataset with new variable called rating*/
data new_data;
    set original_data;
    if points > 35 then rating = 'great';
    else if points > 30 then rating = 'good';
    else rating = 'bad';
run ;

/*view new dataset*/
proc print data =new_data; 

Derecelendirme adı verilen yeni sütun, puan sütununda karşılık gelen değere bağlı olarak “mükemmel”, “iyi” veya “kötü” değerini alır.

Not : Çeşitli koşullara bağlı olarak istediğiniz kadar farklı değer döndürmek istediğiniz kadar ELSE IF ifadesini kullanmaktan çekinmeyin.

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 IF-THEN-DO nasıl kullanılır?
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