Come utilizzare la funzione trova in sas


È possibile utilizzare la funzione TROVA in SAS per restituire la posizione della prima occorrenza di un singolo carattere in una stringa.

Questa funzione utilizza la seguente sintassi di base:

FINDC (stringa, elenco serbatoi)

Oro:

  • string : la stringa da analizzare
  • charlist : l’elenco dei caratteri da cercare nell’origine

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

Esempio: utilizzo della funzione TROVA in SAS

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

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

Possiamo utilizzare la funzione TROVA per trovare la posizione della prima occorrenza dei caratteri x , y o z :

 /*find position of first occurrence of either x, y or z in name*/
data new_data;
    set original_data;
    first_xyz = findc (name, 'xyz');
run ;

/*view results*/
proc print data =new_data;

La nuova colonna denominata first_xyz visualizza la posizione della prima occorrenza dei caratteri x , y o z nella colonna del nome .

Se nessuno di questi tre caratteri è presente nella colonna del nome , la funzione FINDC restituisce semplicemente il valore 0 .

Ad esempio, dal risultato possiamo vedere:

La posizione della prima occorrenza di x, y o z nella prima riga è la posizione 4 . Possiamo vedere che il carattere nella posizione 4 nella prima riga è a y .

La posizione della prima occorrenza di x, y o z nella seconda riga è 0 perché nessuna di queste tre lettere esiste nel nome della seconda riga.

E così via.

La differenza tra le funzioni TROVA e TROVA

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

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

 /*create new dataset*/
data new_data;
    set original_data;
    find_smith = find (name, 'Smith');
    findc_smith = findc (name, 'Smith');
run ;

/*view new dataset*/
proc print data =new_data; 

La colonna find_smith mostra la posizione della prima occorrenza della sottostringa “Smith” nella colonna del nome .

La colonna findc_smith visualizza la posizione della prima occorrenza delle lettere s , m , i , t o h nella colonna del nome .

Ad esempio, dal risultato possiamo vedere:

La sottostringa ‘Smith’ non appare mai nel nome, quindi find_smith restituisce un valore 0 .

La lettera i appare nella settima posizione del nome quindi findc_smith restituisce un valore di 7 .

E così via.

Risorse addizionali

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

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

Aggiungi un commento

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