Jak usunąć znaki specjalne z ciągów w sas-ie


Najłatwiejszym sposobem usunięcia znaków specjalnych z łańcucha w SAS-owym formacie jest użycie funkcji COMPRESS z modyfikatorem „kas”.

Ta funkcja wykorzystuje następującą podstawową składnię:

 data new_data;
    set original_data;
    remove_specials = compress (some_string, , ' kas ');
run ;

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Przykład: Usuń znaki specjalne z ciągu znaków w SAS-ie

Załóżmy, że mamy następujący zbiór danych w SAS-ie, który zawiera nazwiska różnych pracowników i ich łączną sprzedaż:

 /*create dataset*/
data data1;
    input name $sales;
    datalines ;
Bob&%^ 45
M&$#@ike 50
Randy)) 39
Chad!? 14
Dan** 29
R[on] 44
;
run ;

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

Pamiętaj, że wartości w kolumnie nazwa zawierają kilka znaków specjalnych.

Możemy użyć funkcji COMPRESS , aby usunąć te znaki specjalne:

 /*create second dataset with special characters removed from names*/
data data2;
  setdata1 ;
  new_name= compress (name, , ' kas ');
run ;

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

Należy pamiętać, że kolumna nowa_nazwa zawiera wartości z kolumny nazwa z usuniętymi znakami specjalnymi.

Oto dokładnie, co zrobiła funkcja COMPRESS , aby usunąć te znaki specjalne:

  • k określa, że chcemy „zachować” pewne znaki
  • określony , aby zachować znaki alfabetu
  • s określono, aby zachować białe znaki

Uwaga : Pełną listę modyfikatorów funkcji COMPRESS można znaleźć na tej stronie dokumentacji SAS-a .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w SAS-ie:

Jak wyodrębnić liczby z ciągu w SAS-ie
Jak korzystać z funkcji SUBSTR w SAS-ie
Jak konwertować ciągi znaków na wielkie, małe i właściwe litery w SAS

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *