Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > Débutez
Débutez Forum concentrant les premières questions que l'on se pose en tant que débutant
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 25/03/2011, 14h43   #1
Invité régulier
 
Inscription : mars 2011
Messages : 41
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 41
Points : 5
Points : 5
Par défaut Creation carrière d'individus

Bonjour à tous,

Je continue mon étude sous SAS sur des individus. Je souhaiterais étudier la carrière de cadres dans une entreprise.

Je possède des données depuis 1980 jusque 2010 et une liste de 250 cadres.

Ainsi par ligne je possède un individus, et toutes les années il était présent dans l'entreprise et dans quelle secteur, par exemple:

Nom individu 1980 1981 1982 1983 1984 1985 1986 1987 1988 ... 2010
Cadre 1 A A A B B
Cadre2 C C C
Cadre3 B B B E E

Soit le cadre 1 a commencé en 1981 et a terminé en 1985, et est passé par deux secteurs différents, le A et le B.
Le cadre 2 a commencé en 1985 et terminé en 1987 (désolé c'est un peu décalé!)

Je souhaiterais étudier ces carrières sous forme de cohorte:
Soit n la première année d'embauche, n+1 la seconde... jusque la dernière!

Pour ensuite étudier leur comportement, suivi de secteur ect...

J'ai une maitrise assez moyenne de SAS pour ce genre de programme!

Merci pour votre aide!! En attendant je vous souhaites un bon week end
ratm13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/03/2011, 14h54   #2
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Salut,
Tu peux mettre en pièce jointe un échantillon de ton fichier (txt) et préciser ce que tu souhaites obtenir pour un cadre bien spécifique?
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/03/2011, 15h00   #3
Expert Confirmé
 
Avatar de olivier.decourt
 
Homme Olivier Decourt
Formateur en informatique
Inscription : avril 2008
Messages : 1 467
Détails du profil
Informations personnelles :
Nom : Homme Olivier Decourt
Âge : 34
Localisation : France

Informations professionnelles :
Activité : Formateur en informatique
Secteur : Conseil

Informations forums :
Inscription : avril 2008
Messages : 1 467
Points : 2 823
Points : 2 823
Bonjour.
Je ne sais pas si j'ai bien compris ce que tu veux obtenir en résultat, mais tu as plusieurs pistes : soit une proc Transpose, pour mettre tes carrières en une série d'observations (avec un pivot BY nom), suivie d'une étape Data pour éliminer les années vides et pour numéroter les années de 1 à n ; soit une seule étape Data avec un Array (bloc de variables indicées) qu'on peut parcourir pour chercher où commence la carrière, puis la parcourir en écrivant à chaque fois une observation (instruction OUTPUT).
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
DATA work.histo ;
  INFILE DATALINES MISSOVER DLM="," DSD ;
  INPUT Nom $
        (a1980 - a2010) (:$1.) ;
DATALINES ;
Cadre1,,A,A,A,B,B
Cadre2,,,,,,,C,C,C
;
RUN ;
DATA work.cohorte (KEEP=nom secteur annee) ;
  SET work.histo ;
  ARRAY secteurs $ a1980-a2010 ;
  DO i=1 TO DIM(secteurs) WHILE(MISSING(secteurs(i)));
  END ;
  annee=0 ;
  DO j=i TO DIM(secteurs) WHILE(NOT MISSING(secteurs(j)));
    secteur = secteurs(j) ;
	annee = annee + 1 ;
	OUTPUT ;
  END ;
RUN ;
Bon courage.
Olivier
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/03/2011, 18h09   #4
Invité régulier
 
Inscription : mars 2011
Messages : 41
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 41
Points : 5
Points : 5
Re-bonjour,

merci pour vos réponses, hélas j'ai beau essayer les deux programmes,aucun ne fonctionne. Les n+1 n'apparaissent pas...

Voici en pièce jointe un bout de mon fichier sous format excel, peut-être cela vous parlera plus.

Les cadres peuvent changer de secteur pendant leur carrière (passer de A à D, ou l'inverse) ils peuvent aussi partir de l'entreprise et revenir plus tard...
Fichiers attachés
Type de fichier : xls exemple.xls (31,0 Ko, 9 affichages)
ratm13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/03/2011, 18h45   #5
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
Pouir ma part, je ne suis pas sur d'avoir bien ce que tu cherches à faire. Peux-tu réexpliquer?
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/03/2011, 20h44   #6
Invité régulier
 
Inscription : mars 2011
Messages : 41
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 41
Points : 5
Points : 5
Bien sur.

Je possède une liste de cadres avec leur carrière au sein de l'entreprise entre 1976 et 2011. Certain ont commencé en 1976, d'autres en 2008... et certain sont parti de l'entreprise en 1982 ou une autre date.
Donc chaque cadre possède une ligne de carrière au sein de l'entreprise, par exemple pour un cadre:
1980 = début de carrière en secteur A
1981=deuxième année en secteur B
1982=troisieme année en secteur B
1983=troisieme année en secteur B
1984=troisieme année en secteur C
1985=fin de sa carrière dans l'entreprise, il quittent la cohorte

donc en n=1980 en A, n+1=1981 en B, n+2=1982 en B, n+3=1983 en B, n+4=1984 en B, n+5=1985 en C

mais pour d'autre le calendrier est différent, mais dans tous les cas leur carrière commence par l'année n et se poursuit par n+i

Plus clair ou pas?
ratm13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/03/2011, 22h22   #7
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
1980 = début de carrière en secteur A
1981=deuxième année en secteur B
1982=troisieme année en secteur B
1983=troisieme année en secteur B
1984=troisieme année en secteur C
1985=fin de sa carrière dans l'entreprise, il quittent la cohorte

tu veux le nombre d'années passé dans chaque secteur comme suit?

Code :
1
2
          secteur1   secteur2  secteur3
cadre1      1              3          1
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 09h30   #8
Invité régulier
 
Inscription : mars 2011
Messages : 41
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 41
Points : 5
Points : 5
Non,
Pour chaque individus je souhaites en n leur première année de contrat, en n+1 leur seconde avec a chaque fois le secteur ou ils travaillent:
N N+1 N+2 N+3 N+i
cadre 1 Secteur x Secteur x Secteur x Secteur x Secteur x
ratm13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 10h35   #9
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Je ne comprends pas, pour moi ton fichier a déjà cette structure.
Tu peux me dire concrètement à partir de ton exemple ci-dessous, ce que tu souhaites obtenir (au lieu de mettre des x):

1980 = début de carrière en secteur A
1981=deuxième année en secteur B
1982=troisieme année en secteur B
1983=troisieme année en secteur B
1984=troisieme année en secteur C
1985=fin de sa carrière dans l'entreprise, il quittent la cohorte
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 10h56   #10
Invité régulier
 
Inscription : mars 2011
Messages : 41
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 41
Points : 5
Points : 5
En fait je souhaites transformer les années en n, n+1....

1980 est transformé en n
1981 en n+1
etc...

mais tous ne sont pas entré dans l'entreprise au même moment donc pour que je puisse étudier leur carrière selon n'importe quelle date d'entrée et de sortie, tout coder par n, n+1 etc...

J'ai du mal a m'expliquer!!
ratm13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 10h59   #11
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Citation:
Envoyé par ratm13 Voir le message
En fait je souhaites transformer les années en n, n+1....

1980 est transformé en n
1981 en n+1
etc...
Mais dans ton fichier Excel, je ne vois pas les années 1980, 1981, etc...
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 11h05   #12
Invité régulier
 
Inscription : mars 2011
Messages : 41
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 41
Points : 5
Points : 5
Oui excuses moi c'est codé en C0176, C1076... c'est le même principe, en fait C0176 correspond au secteur du cadre au 1er janvier 76 et C1076 le secteur du cadre au 1er octobre 76 !
ratm13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 11h09   #13
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Tu peux m'envoyer ton fichier Excel au format txt ?(j'ai pas excel)
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 11h19   #14
Invité régulier
 
Inscription : mars 2011
Messages : 41
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 41
Points : 5
Points : 5
Je ne sais pas si ça sera plus parlant!
Fichiers attachés
Type de fichier : txt Copie de exemple.txt (5,2 Ko, 4 affichages)
ratm13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 11h22   #15
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Citation:
Envoyé par ratm13 Voir le message
Je ne sais pas si ça sera plus parlant!
Pour le cadre1, il a commencé le 1er janvier 1976 jusqu'en octobre 1976
et tu veux afficher toutes les dates intermédiaires avec A, c'est ça?
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 11h26   #16
Invité régulier
 
Inscription : mars 2011
Messages : 41
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 41
Points : 5
Points : 5
Non , le cadre 1 a commencé sa carrière en octobre 76 et l'a terminée en janvier 1979
ratm13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 11h30   #17
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Citation:
Envoyé par ratm13 Voir le message
Non , le cadre 1 a commencé sa carrière en octobre 76 et l'a terminée en janvier 1979



donc tu veux faire apparaitre toutes les dates intermédiaires entre 1976 et 1979 non?
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 11h37   #18
Invité régulier
 
Inscription : mars 2011
Messages : 41
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 41
Points : 5
Points : 5
oui et les coder en n, n+1, n+2 ...
et cela pour tous les cadres!
ratm13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 11h40   #19
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Citation:
Envoyé par ratm13 Voir le message
oui et les coder en n, n+1, n+2 ...
et cela pour tous les cadres!
C'est clair maintenant mais ça va être fastidieux
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/03/2011, 11h44   #20
Invité régulier
 
Inscription : mars 2011
Messages : 41
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 41
Points : 5
Points : 5
Pour moi la logique:

Sas balaie la première ligne à partir de la colonne 1, quand il trouve une valeur il créer dans une nouvelle colonne et la code "n", ensuite il continue et s'il trouve une seconde valeur il l'a code "n+2" etc... à la fin il ne trouve aucune valeur dans la colonne et bien il passe à la ligne suivante, ça donnera:

N N+1 N+3 ...

Cadres 1 A A A

Tu penses que c'est réalisable? en faisant un array? mais je maitrise mal cette option
ratm13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h57.


 
 
 
 
Partenaires

Hébergement Web