Sas'ta bir dizeden sayılar nasıl çıkarılır
SAS’ta bir dizeden sayıları ayıklamanın en kolay yolu, “A” değiştiricisiyle COMPRESS işlevini kullanmaktır.
Bu işlev aşağıdaki temel sözdizimini kullanır:
data new_data;
set original_data;
numbers_only = compress(some_string, '', ' A ');
run ;
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: SAS’taki bir dizeden sayıları ayıklama
SAS’ta çeşitli üniversite derslerinin adlarını gösteren aşağıdaki veri kümesine sahip olduğumuzu varsayalım:
/*create dataset*/
data original_data;
input course $12.;
datalines ;
Stats101
Economics203
Business201
Botany411
Calculus101
English201
Chemistry402
Physics102
;
run ;
/*view dataset*/
proc print data = original_data;
Her ders adından yalnızca sayıları çıkarmak için aşağıdaki kodu kullanabiliriz:
/*extract numbers from course column*/
data new_data;
set original_data;
course_number_only = compress (course, '', ' A ');
run ;
/*view results*/
proc print data = new_data;
Course_number_only adlı yeni sütunun yalnızca kurs sütunundaki dizelerdeki sayıları içerdiğini unutmayın.
Bunun yerine her dizeden yalnızca karakterleri çıkarmak istiyorsanız, ‘d’ değiştiricisiyle COMPRESS işlevini kullanabilirsiniz:
/*extract characters from course column*/
data new_data;
set original_data;
course_characters_only = compress (course, '', ' d ');
run ;
/*view results*/
proc print data = new_data;
Course_characters_only adlı yeni sütunun yalnızca kurs sütunundaki dizelerdeki sayıları içerdiğini unutmayın.
Not : COMPRESS işlevine ilişkin değiştiricilerin tam listesini bu SAS dokümantasyon sayfasında bulabilirsiniz.
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 aykırı değerler nasıl belirlenir
SAS’ta frekans tabloları nasıl oluşturulur?