Jak korzystać z funkcji anydigit w sas-ie
Możesz użyć funkcji ANYDIGIT w SAS-ie, aby zwrócić pozycję pierwszej cyfry w danym ciągu.
Ta funkcja wykorzystuje następującą podstawową składnię:
DOWOLNA CYFRA(wyrażenie, [start])
Złoto:
- wyrażenie : Ciąg do wyszukania
- start (opcjonalnie) : Pozycja początkowa, od której należy szukać.
Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.
Przykład: użycie funkcji ANYDIGIT w SAS-ie
Załóżmy, że mamy w SAS-ie następujący zbiór danych, który zawiera informacje o różnych pracownikach firmy:
/*create dataset*/
data my_data;
input employeeID $sales;
datalines ;
54AAF 23
0009A 38
BC18B 40
09:30 12
04429 65
B1300 90
B1700 75
RRHHJ 35
0Y009 40
C6500 23
;
run ;
/*view dataset*/
proc print data =my_data;
Za pomocą funkcji ANYDIGIT możemy znaleźć pozycję pierwszej cyfry w kolumnie EmployeeID :
/*create new dataset*/
data new_data;
set my_data;
firstDigit = anydigit (employeeID);
run ;
/*view new dataset*/
proc print data = new_data;
Nowa kolumna o nazwie FirstDigit wyświetla pozycję pierwszego wystąpienia cyfry w kolumnie EmployeeID .
Na przykład:
- Pierwsza cyfra 54AAF znajduje się na pozycji 1 .
- Pierwsza cyfra 0009A znajduje się na pozycji 1 .
- Pierwsza cyfra BC18B znajduje się na pozycji 3 .
I tak dalej.
Jeżeli dla danego identyfikatora pracownika nie ma cyfr, zwracana jest wartość 0 .
Możemy także użyć argumentu start w funkcji ANYDIGIT , aby określić pozycję początkową, od której należy szukać.
Na przykład możemy użyć poniższego kodu, aby znaleźć pozycję pierwszej cyfry w kolumnie EmployeeID , zaczynając od pozycji 3 :
/*create new dataset*/
data new_data;
set my_data;
firstDigit = anydigit (employeeID, 3 );
run ;
/*view new dataset*/
proc print data =new_data;
Należy pamiętać, że wartości EmployeeID zawierające tylko znak alfabetyczny na pierwszych dwóch pozycjach otrzymują teraz wartość 0 w kolumnie FirstDigit , ponieważ wyszukiwanie cyfr rozpoczyna się teraz od pozycji 3 .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak używać innych popularnych funkcji w SAS-ie:
Jak usunąć znaki specjalne z ciągów w SAS-ie
Jak zamienić znaki w ciągu w SAS-ie
Jak przekonwertować zmienną znakową na numeryczną w SAS-ie