Hoe de indexw-functie in sas te gebruiken
U kunt de functie INDEXW in SAS gebruiken om de positie van het eerste teken van een woord dat in een tekenreeks voorkomt, te retourneren.
Deze functie gebruikt de volgende basissyntaxis:
INDEXW(bron; uittreksel)
Goud:
- bron : het kanaal dat moet worden geanalyseerd
- extract : Het woord waarnaar moet worden gezocht in de bron
Het volgende voorbeeld laat zien hoe u deze functie in de praktijk kunt gebruiken.
Voorbeeld: gebruik van de INDEXW-functie in SAS
Stel dat we de volgende gegevensset in SAS hebben die een kolom met expressies bevat:
/*create dataset*/
data original_data;
input sentence $40. ;
datalines ;
A pig is my favorite animal
My name is piglet
Pigs are so cute
Here is a baby pig
His name is piggie
;
run ;
/*view dataset*/
proc print data = original_data;
We kunnen de INDEXW- functie gebruiken om de positie te vinden van de eerste keer dat het woord „varken“ voorkomt in de woordgroep :
/*find position of first occurrence of 'pig' in phrase column*/
data new_data;
set original_data;
indexw_pig = indexw (phrase, 'pig');
run ;
/*view results*/
proc print data = new_data;
De nieuwe kolom genaamd indexw_pig geeft de positie weer van de eerste keer dat het woord „pig“ voorkomt in de expressiekolom .
Als het woord „varken“ nooit in de expressiekolom voorkomt, retourneert de functie INDEXW eenvoudigweg de waarde 0 .
Uit het resultaat kunnen we bijvoorbeeld zien:
De positie van de eerste keer dat het woord „varken“ voorkomt in de eerste zin is 3 .
De tweede regel bevat niet alleen het woord ‚pig‘ in de zin, dus wordt de waarde 0 geretourneerd.
Enzovoort.
Het verschil tussen INDEX- en INDEXW-functies
De INDEX- functie in SAS retourneert de positie van de eerste keer dat een bepaalde subtekenreeks in een andere tekenreeks voorkomt.
De INDEXW- functie retourneert daarentegen de positie van de eerste keer dat een bepaald woord in een andere tekenreeks voorkomt.
Per definitie moet een woord een spatie ervoor en erna hebben.
Het volgende voorbeeld illustreert het verschil tussen de INDEX- en INDEXW- functies:
/*create new dataset*/
data new_data;
set original_data;
index_pig = index (phrase, 'pig');
indexw_pig = indexw (phrase, 'pig');
run ;
/*view new dataset*/
proc print data = new_data;
De kolom index_pig geeft de positie weer van de eerste keer dat de subtekenreeks “pig” voorkomt in de zinskolom .
De kolom indexw_pig geeft de positie weer van de eerste keer dat het woord „pig“ voorkomt in de expressiekolom .
Aanvullende bronnen
In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende functies in SAS kunt gebruiken:
Hoe de SUBSTR-functie in SAS te gebruiken
Hoe de COMPRESS-functie in SAS te gebruiken
Hoe de FIND-functie in SAS te gebruiken
Hoe de COALESCE-functie in SAS te gebruiken