Sas: put ve input arasındaki fark
Değişkenleri farklı veri türlerine dönüştürmek için SAS’taki PUT ve INPUT işlevlerini kullanabilirsiniz.
İki fonksiyon arasındaki fark şu şekildedir:
PUT işlevi karakter veya sayısal değişkenleri girdi olarak alır ve her zaman karakter değişkenlerinin çıktısını verir .
INPUT işlevi girdi olarak yalnızca karakter değişkenlerini alır ve karakter veya sayısal değişkenlerin çıktısını alabilir .
Aşağıdaki örnekler pratikte PUT ve INPUT işlevlerini kullanmanın iki yaygın yolunu göstermektedir.
Örnek 1: Sayısal bir değişkeni karakter değişkenine dönüştürmek için PUT kullanma
Diyelim ki SAS’ta bir mağazanın art arda 10 gün boyunca yaptığı toplam satışları gösteren aşağıdaki veri setine sahibiz:
/*create dataset*/ data original_data; input day sales; datalines ; 1 7 2 12 3 15 4 14 5 13 6 11 7 10 8 16 9 18 10 24 ; run ; /*view dataset*/ proc print data = original_data;
Veri kümesindeki her değişkenin veri türünü görüntülemek için prosedürün içeriğini kullanabiliriz:
/*display data type for each variable*/
proc contents data =original_data;
Gün ve satışların her ikisinin de sayısal değişkenler olduğunu görebiliriz.
Gün değişkenini sayısaldan karaktere dönüştürmek için PUT işlevini kullanabiliriz:
/*create new dataset where 'day' is character*/
data new_data;
set original_data;
char_day = put (day, 8.);
drop day;
run ;
/*view new dataset*/
proc print data =new_data;
Yeni veri kümesindeki her değişkenin veri türünü kontrol etmek için proc içeriğini tekrar kullanabiliriz:
/*display data type for each variable in new dataset*/
proc contents data =new_data;
Gün değişkenini sayısaldan char_day adlı yeni bir karakter değişkenine dönüştürmek için PUT işlevini başarıyla kullandık.
Örnek 2: Bir karakter değişkenini sayısal bir değişkene dönüştürmek için INPUT’u kullanma
Diyelim ki SAS’ta bir mağazanın art arda 10 gün boyunca yaptığı toplam satışları gösteren aşağıdaki veri setine sahibiz:
/*create dataset*/ data original_data; input day $sales; datalines ; 1 7 2 12 3 15 4 14 5 13 6 11 7 10 8 16 9 18 10 24 ; run ; /*view dataset*/ proc print data = original_data;
Veri kümesindeki her değişkenin veri türünü görüntülemek için prosedürün içeriğini kullanabiliriz:
/*display data type for each variable*/
proc contents data =original_data;
Günün bir karakter değişkeni, satışların ise sayısal bir değişken olduğunu görebiliriz.
Gün değişkenini karakterden sayısala dönüştürmek için INPUT işlevini kullanabiliriz:
/*create new dataset where 'day' is numeric*/
data new_data;
set original_data;
numeric_day = input (day, comma9.);
drop day;
run ;
/*view new dataset*/
proc print data =new_data;
Yeni veri kümesindeki her değişkenin veri türünü kontrol etmek için proc içeriğini tekrar kullanabiliriz:
/*display data type for each variable in new dataset*/
proc contents data = new_data;
Gün değişkenini bir karakter değişkeninden sayısal_gün adı verilen yeni bir sayısal değişkene dönüştürmek için INPUT işlevini başarıyla kullandık.
Ek kaynaklar
Aşağıdaki eğitimlerde SAS’ta diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
SAS: Bir karakter değişkeni sayısal değere nasıl dönüştürülür?
SAS: Sayısal bir değişken karaktere nasıl dönüştürülür?
SAS: Bir karakter değişkeni tarihe nasıl dönüştürülür?
SAS: Sayısal bir değişken tarihe nasıl dönüştürülür?