Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > SAS Base
SAS Base Forum d'entraide sur SAS base : étape data, procédures non statistiques, procédures non graphiques, SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/09/2011, 13h26   #1
Invité de passage
 
Inscription : septembre 2011
Messages : 7
Détails du profil
Informations forums :
Inscription : septembre 2011
Messages : 7
Points : 2
Points : 2
Par défaut Filtré une liste

Bonjour,

J'ai une base de données de gestion d'article, et je souhaite filtrer les articles qui parle d'economie en me basant sur des mots clés: PIB, Finance, Chomage etc.
J'ai essayer contains , et like mais il ne me fait pas le filtrage.
Merci d'avance
jimbo53 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/09/2011, 01h14   #2
Membre éclairé
 
Homme
statisticien
Inscription : mai 2011
Messages : 212
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : statisticien
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mai 2011
Messages : 212
Points : 319
Points : 319
Bonsoir

Peut être faire des tests avec Index(UPCASE(' '!!String),' CHOMAGE ')>0 or Index(UPCASE(' '!!String),' FINANCE ')>0 or Index(UPCASE(' '!!String),' PIB ')>0 etc... ?
jerome_pdv2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/09/2011, 02h20   #3
Invité de passage
 
Inscription : septembre 2011
Messages : 7
Détails du profil
Informations forums :
Inscription : septembre 2011
Messages : 7
Points : 2
Points : 2
Bonjour,
Merci mais j'aimerai savoir premièrement comment on utilise l'index(Je suis debutant en sas).pouvez vous me donner un exemple!!!
jimbo53 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/09/2011, 13h12   #4
Membre éclairé
 
Homme
statisticien
Inscription : mai 2011
Messages : 212
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : statisticien
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mai 2011
Messages : 212
Points : 319
Points : 319
Bonjour,

Pour le fonctionnement je te renvoie à la documentation SAS qui est particulièrement limpide quand au fonctionnement de la fonction index

Citation:
INDEX Function :

Searches a character expression for a string of characters, and returns the position of the string's first character for the first occurrence of the string.
De même que tu peux ici également mettre à profit INDEXW, à la desciption tout aussi limpide

Citation:
INDEXW Function :

Searches a character expression for a string that is specified as a word, and returns the position of the first character in the word.
Je te propose ensuite d'examiner le résultat du programme suivant, suite à quoi je pense qu'INDEX et INDEXW n'auront (presque) plus de secrets pour toi...

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
DATA a;
titre='Finance : HAUSSE ESPEREE DU PIB DANS LE MONDE';output;
titre='CHOMAGE : LA FIN DES HARICOTS';output;
titre='FINANCE : LA FIN DE LA VEUVE DE CAPENTRAS';output;
titre='FINANCE : ENFIN UNE FINANCe ECOLOGIQUE';output;
titre='COLLECTIVITES : COFINANCEMENT ETAT/REGION';output;
run;
 
DATA b; SET a;
*test1 : Début de la première occurence de la chaine de caractères consécutifs "FINANCE" dans titre, sensible à la casse ;
test1=INDEX(titre,'FINANCE');
*test2 : Début de la première occurence de la chaine de caractères consécutifs "FINANCE" dans titre, insensible à la casse ;
test2=INDEX(upcase(titre),'FINANCE');
*test3 : Début de la première occurence de la chaine " FINANCE " , sensible à la casse ;
test3=INDEX(titre,' FINANCE ');
*test4 : Début de la première occurence de la chaine  " FINANCE " , insensible à la casse ;
test4=INDEX(upcase(titre),' FINANCE ');
*test5 : Début de la première occurence de la chaine  " FINANCE " , sensible à la casse ;
test5=INDEX(' '!!titre,' FINANCE ');
*test6 : Début de la première occurence de la chaine  "  " , insensible à la casse ;
test6=INDEX(upcase(' '!!titre),' FINANCE ');
*test7 : Début de la premiere occurence du mot "FINANCE", sensible à la casse;
test7=indexw(titre,'FINANCE');
*test8 : Début de la premiere occurence du mot "FINANCE", insensible à la casse;
test8=indexw(upcase(titre),'FINANCE');
run;
Lorsque INDEX ou INDEXW renvoient 0 , c'est que rien n'a été détecté.
jerome_pdv2 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 20/09/2011, 11h18   #5
Invité de passage
 
Inscription : septembre 2011
Messages : 7
Détails du profil
Informations forums :
Inscription : septembre 2011
Messages : 7
Points : 2
Points : 2
Bonjour,
Je vous remercie beaucoup. encore mille merci
jimbo53 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h14.


 
 
 
 
Partenaires

Hébergement Web