Sas'ta scan i̇şlevi nasıl kullanılır (örneklerle)
Bir dizeden n’inci sözcüğü çıkarmak için SAS’taki SCAN işlevini kullanabilirsiniz.
Bu işlev aşağıdaki temel sözdizimini kullanır:
SCAN (dize, sayı)
Altın:
- string : Ayrıştırılacak dize
- count : Çıkarılacak n’inci kelime
Bu özelliği kullanmanın en yaygın üç yolu şunlardır:
Yöntem 1: dizeden n’inci sözcüğü çıkarın
data new_data;
set original_data;
second_word = scan (string_variable, 2 );
run ;
Yöntem 2: Son sözcüğü dizeden çıkarın
data new_data;
set original_data;
last_word = scan (string_variable, -1 );
run ;
Yöntem 3: Bir dizeden birden çok sözcüğü ayıklama
data new_data;
set original_data;
first_word = scan (string_variable, 1 );
second_word = scan (string_variable, 2 );
third_word = scan (string_variable, 3 );
run ;
Aşağıdaki örnekler, SAS’ta her yöntemin aşağıdaki veri kümesiyle nasıl kullanılacağını gösterir:
/*create dataset*/
data original_data;
input name $20. dirty;
datalines ;
Andy Lincoln Bernard 55
Barren Michael Smith 41
Chad Simpson Arnolds 13
Derrick Parson Henry 29
Eric Miller Johansen 47
Frank Giovanni Goode 61
;
run ;
/*view dataset*/
proc print data = original_data;
Örnek 1: Dizeden n’inci sözcüğü çıkarın
Aşağıdaki kod, ad sütunundaki her dizeden ikinci sözcüğün nasıl çıkarılacağını gösterir:
/*extract second word in each row of name column*/
data new_data;
set original_data;
second_word = scan (name, 2 );
run ;
/*view results*/
proc print data =new_data;
Second_word adlı yeni sütunun, ad sütunundaki her dizenin ikinci sözcüğünü içerdiğini unutmayın.
Örnek 2: Dizedeki son sözcüğü çıkarın
Aşağıdaki kod, ad sütunundaki her dizenin son sözcüğünü çıkarmak için tarama işlevinde -1 değerinin nasıl kullanılacağını gösterir:
/*extract last word in each row of name column*/
data new_data;
set original_data;
last_word = scan (name, -1 );
run ;
/*view results*/
proc print data =new_data;
Last_word adlı yeni sütunun, ad sütunundaki her dizenin son sözcüğünü içerdiğini unutmayın.
Örnek 3: Bir dizeden birden çok kelimeyi çıkarma
Aşağıdaki kod, ad sütunundaki her dizeden her sözcüğü çıkarmak için tarama işlevinin nasıl kullanılacağını gösterir:
/*extract each word in each row of name column*/
data new_data;
set original_data;
first_word = scan (name, 1 );
second_word = scan (name, 2 );
third_word = scan (name, 3 );
run ;
/*view results*/
proc print data =new_data;
Ad sütunundaki her dizenin birinci, ikinci ve üçüncü sözcüğünü içeren üç yeni sütunun oluşturulduğ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 SUBSTR işlevi nasıl kullanılır?
SAS’ta BUL işlevi nasıl kullanılır?
SAS’ta COALESCE işlevi nasıl kullanılır?