Jak wyodrębnić liczby z ciągu w sas-ie


Najłatwiejszym sposobem wyodrębnienia liczb z ciągu znaków w SAS-ie jest użycie funkcji COMPRESS z modyfikatorem „A”.

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

 data new_data;
    set original_data;
    numbers_only = compress(some_string, '', ' A ');
run ;

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

Przykład: Wyodrębnij liczby z ciągu znaków w SAS-ie

Załóżmy, że mamy następujący zbiór danych w SAS-ie, który pokazuje nazwy różnych kierunków uniwersyteckich:

 /*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; 

Możemy użyć poniższego kodu, aby wyodrębnić same liczby z nazwy każdego kursu:

 /*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; 

Zauważ, że nowa kolumna o nazwie tylko_numer_kursu zawiera tylko liczby z ciągów znaków w kolumnie kursu .

Jeśli zamiast tego chcesz wyodrębnić tylko znaki z każdego ciągu, możesz użyć funkcji COMPRESS z modyfikatorem „d”:

 /*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; 

Zauważ, że nowa kolumna o nazwie tylko_znaki_kursu zawiera tylko liczby z ciągów znaków w kolumnie kursu .

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 normalizować dane w SAS-ie
Jak zidentyfikować wartości odstające w SAS
Jak tworzyć tabele częstości w SAS-ie

Dodaj komentarz

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