Sas'ta compress i̇şlevi nasıl kullanılır (örneklerle)
Bir dizeden belirli karakterleri kaldırmak için SAS’taki COMPRESS işlevini kullanabilirsiniz.
Bu işlev aşağıdaki temel sözdizimini kullanır:
COMPRESS(Dize, kaldırılacak karakterler)
Altın:
- String : Ayrıştırılacak dize
- kaldırılacak karakterler : Dizeden kaldırılacak bir veya daha fazla belirli karakter
Bu özelliği kullanmanın en yaygın dört yolu şunlardır:
Yöntem 1: Dizedeki tüm boşlukları kaldırın
data new_data;
set original_data;
compressed_string = compress (string_variable);
run ;
Yöntem 2: Dizeden belirli karakterleri kaldırın
data new_data;
set original_data;
compressed_string = compress (string_variable, ' !?@# ');
run ;
Yöntem 3: Dizedeki tüm alfabetik karakterleri kaldırın
data new_data;
set original_data;
compressed_string = compress (string_variable, '', ' a ');
run ;
Yöntem 4: Dizeden tüm sayısal değerleri kaldırın
data new_data;
set original_data;
compressed_string = compress (string_variable, '', ' d ');
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 $25.;
datalines ;
Andy Lincoln4 Bernard!
Barren Michael55 Smith!
Chad Simpson7 Arnolds?
Derrick Parson2 Henry
Eric Miller2 Johansen!
Frank Giovanni5 Goode
;
run ;
/*view dataset*/
proc print data = original_data;
Örnek 1: Dizedeki tüm boşlukları kaldırın
Aşağıdaki kod, ad sütunundaki her dizedeki tüm boşlukların nasıl kaldırılacağını gösterir:
/*remove blank spaces from each string in name column*/
data new_data;
set original_data;
compressed_name = compress (name);
run ;
/*view results*/
proc print data =new_data;
Tablet_adı adlı yeni sütundaki her dizedeki tüm boşlukların kaldırıldığını unutmayın.
Örnek 2: Belirli karakterleri dizeden kaldırın
Aşağıdaki kod, ad sütunundaki her dizedeki tüm soru ve ünlem işaretlerinin nasıl kaldırılacağını gösterir:
/*remove question marks and exclamation points from each string in name column*/
data new_data;
set original_data;
compressed_name = compress (name, ' ?! ');
run ;
/*view results*/
proc print data =new_data;
Tablet_adı adlı yeni sütundaki her dizedeki tüm soru ve ünlem işaretlerinin kaldırıldığını unutmayın.
Örnek 3: Dizedeki tüm alfabetik karakterleri kaldırın
Aşağıdaki kod, ad sütunundaki her dizedeki tüm alfabetik karakterlerin nasıl kaldırılacağını gösterir:
/*remove all alphabetical characters from each string in name column*/
data new_data;
set original_data;
compressed_name = compress (name, '', ' a ');
run ;
/*view results*/
proc print data = new_data;
Tablet_adı adlı yeni sütundaki her dizedeki tüm alfabetik karakterlerin kaldırıldığını unutmayın.
Örnek 4: Dizeden tüm sayısal değerleri kaldırın
Aşağıdaki kod, ad sütunundaki her dizedeki tüm sayısal değerlerin nasıl kaldırılacağını gösterir:
/*remove all numeric values from each string in name column*/
data new_data;
set original_data;
compressed_name = compress (name, '', ' d ');
run ;
/*view results*/
proc print data =new_data;
Tablet_adı adı verilen yeni sütundaki her dizedeki tüm sayısal değerlerin kaldırıldığını 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?