Come utilizzare la funzione indexw in sas


È possibile utilizzare la funzione INDEXW in SAS per restituire la posizione del primo carattere di una parola visualizzata in una stringa.

Questa funzione utilizza la seguente sintassi di base:

INDEXW(fonte, estratto)

Oro:

  • source : il canale da analizzare
  • estratto : la parola da cercare nella fonte

L’esempio seguente mostra come utilizzare questa funzione nella pratica.

Esempio: utilizzo della funzione INDEXW in SAS

Supponiamo di avere il seguente set di dati in SAS che contiene una colonna di espressioni:

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

Possiamo utilizzare la funzione INDEXW per trovare la posizione della prima occorrenza della parola “maiale” nella colonna della frase :

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

La nuova colonna denominata indexw_pig mostra la posizione della prima occorrenza della parola “pig” nella colonna delle espressioni .

Se la parola “maiale” non appare mai nella colonna dell’espressione , la funzione INDEXW restituisce semplicemente il valore 0 .

Ad esempio, dal risultato possiamo vedere:

La posizione della prima occorrenza della parola “maiale” nella prima frase è 3 .

La seconda riga non contiene solo la parola “maiale” nella frase, quindi viene restituito il valore 0 .

E così via.

La differenza tra le funzioni INDICE e INDICEW

La funzione INDICE in SAS restituisce la posizione della prima occorrenza di una particolare sottostringa in un’altra stringa.

Al contrario, la funzione INDEXW restituisce la posizione della prima occorrenza di una determinata parola in un’altra stringa.

Per definizione, una parola deve avere uno spazio prima e dopo.

L’esempio seguente illustra la differenza tra le funzioni INDEX e INDEXW :

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

La colonna index_pig mostra la posizione della prima occorrenza della sottostringa “pig” nella colonna della frase .

La colonna indexw_pig mostra la posizione della prima occorrenza della parola “pig” nella colonna delle espressioni .

Risorse addizionali

I seguenti tutorial spiegano come utilizzare altre funzioni comuni in SAS:

Come utilizzare la funzione SUBSTR in SAS
Come utilizzare la funzione COMPRIMERE in SAS
Come utilizzare la funzione TROVA in SAS
Come utilizzare la funzione COALESCE in SAS

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *