Jak korzystać z funkcji indexc w sas-ie
Możesz użyć funkcji INDEXC w SAS-ie, aby zwrócić pozycję pierwszego wystąpienia pojedynczego znaku w ciągu.
Ta funkcja wykorzystuje następującą podstawową składnię:
INDEKS(źródło, wyciąg)
Złoto:
- źródło : kanał do analizy
- ekstrakt : Ciąg znaków do wyszukania w źródle
Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.
Przykład: użycie funkcji INDEXC w SAS-ie
Załóżmy, że mamy następujący zestaw danych w SAS-ie, który zawiera kolumnę nazw:
/*create dataset*/
data original_data;
input name $25.;
datalines ;
Andy Lincoln Bernard
Michael Smith
Chad Simpson Arnolds
Derrick Smith Henrys
Eric Millerton Smith
Frank Giovanni Goode
;
run ;
/*view dataset*/
proc print data = original_data;
Możemy użyć funkcji INDEXC , aby znaleźć pozycję pierwszego wystąpienia znaków x , y lub z :
/*find position of first occurrence of either x, y or z in name*/
data new_data;
set original_data;
first_xyz = indexc (name, 'xyz');
run ;
/*view results*/
proc print data = new_data;
Nowa kolumna o nazwie pierwszy_xyz wyświetla pozycję pierwszego wystąpienia znaków x , y lub z w kolumnie nazwy .
Jeśli w kolumnie nazwa nie ma żadnego z tych trzech znaków, funkcja INDEXC po prostu zwraca wartość 0 .
Na przykład z wyniku możemy zobaczyć:
Pozycja pierwszego wystąpienia x, y lub z w pierwszym wierszu to pozycja 4 . Widzimy, że znak na pozycji 4 w pierwszym wierszu to y .
Pozycja pierwszego wystąpienia x, y lub z w drugim wierszu wynosi 0 , ponieważ w nazwie drugiego wiersza nie ma żadnej z tych trzech liter.
I tak dalej.
Różnica między funkcjami INDEX i INDEXC
Funkcja INDEX w SAS-owym zwraca pozycję pierwszego wystąpienia określonego podciągu w innym ciągu.
Poniższy przykład ilustruje różnicę pomiędzy funkcjami INDEKS i INDEKS :
/*create new dataset*/
data new_data;
set original_data;
index_smith = index (name, 'Smith');
indexc_smith = indexc (name, 'Smith');
run ;
/*view new dataset*/
proc print data =new_data;
Kolumna indeks_kowalski wyświetla pozycję pierwszego wystąpienia podłańcucha „Smith” w kolumnie nazwa .
Kolumna indeksc_smith wyświetla pozycję pierwszego wystąpienia liter s , m , i , t lub h w kolumnie nazwy .
Na przykład z wyniku możemy zobaczyć:
Podciąg „Smith” nigdy nie pojawia się w imieniu, dlatego indeks_kowalski zwraca wartość 0 .
Litera i pojawia się na 7. pozycji imienia, zatem indeksc_smith zwraca wartość 7 .
I tak dalej.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak korzystać z innych popularnych funkcji w SAS-ie:
Jak korzystać z funkcji SUBSTR w SAS-ie
Jak korzystać z funkcji COMPRESS w SAS-ie
Jak korzystać z funkcji ZNAJDŹ w SAS-ie
Jak korzystać z funkcji COALESCE w SAS-ie