Comment utiliser la fonction FINDW dans SAS



Vous pouvez utiliser la fonction FINDW dans SAS pour renvoyer la position du premier caractère d’un mot qui apparaît dans une chaîne.

Cette fonction utilise la syntaxe de base suivante :

FINDW(chaîne, mot)

où:

  • string : La chaîne à analyser
  • word : Le mot à rechercher dans la chaîne

L’exemple suivant montre comment utiliser cette fonction dans la pratique.

Exemple : utilisation de la fonction FINDW dans SAS

Supposons que nous ayons l’ensemble de données suivant dans SAS qui contient une colonne d’expressions :

/*create dataset*/
data original_data;
    input phrase $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;

Nous pouvons utiliser la fonction FINDW pour rechercher la position de la première occurrence du mot « cochon » dans la colonne de phrases :

/*find position of first occurrence of 'pig' in phrase column*/
data new_data;
    set original_data;
    findw_pig = findw(phrase, 'pig');
run;

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

La nouvelle colonne appelée findw_pig affiche la position de la première occurrence du mot « cochon » dans la colonne d’expression .

Si le mot « cochon » n’apparaît jamais dans la colonne d’expression , la fonction FINDW renvoie simplement une valeur de 0 .

Par exemple, à partir du résultat, nous pouvons voir :

La position de la première occurrence du mot « cochon » dans la première phrase est 3 .

La deuxième ligne ne contient pas le mot « cochon » seul dans la phrase, donc une valeur de 0 est renvoyée.

Et ainsi de suite.

La différence entre les fonctions FIND et FINDW

La fonction FIND dans SAS renvoie la position de la première occurrence d’une sous-chaîne particulière dans une autre chaîne.

En revanche, la fonction FINDW renvoie la position de la première occurrence d’un mot particulier dans une autre chaîne.

Par définition, un mot doit avoir un espace avant et après.

L’exemple suivant illustre la différence entre les fonctions FIND et FINDW :

/*create new dataset*/
data new_data;
    set original_data;
    find_pig = find(phrase, 'pig');
    findw_pig = findw(phrase, 'pig');
run;

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

Fonctions FIND et FINDW dans SAS

La colonne find_pig affiche la position de la première occurrence de la sous-chaîne « pig » dans la colonne phrase .

La colonne findw_pig affiche la position de la première occurrence du mot « cochon » dans la colonne d’expression .

Ressources additionnelles

Les didacticiels suivants expliquent comment utiliser d’autres fonctions courantes dans SAS :

Comment utiliser la fonction FIND dans SAS
Comment utiliser la fonction FINDC dans SAS
Comment utiliser la fonction SUBSTR dans SAS

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *