IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macro Discussion :

Ajouter des lignes d'observation


Sujet :

Macro

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    chargé d'études statistiques
    Inscrit en
    Décembre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : chargé d'études statistiques

    Informations forums :
    Inscription : Décembre 2015
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Ajouter des lignes d'observation
    Bonjour à tous,

    Je vous sollicite pour créer des lignes dans SAS.

    J'ai une grosse table dans laquelle figurent pour chaque entreprise les mois de présence. Seulement pour certaines entreprises des mois sont manquants. Je cherche donc à ajouter des lignes pour implémenter les mois manquants.

    Exemple j'ai dans ma table des données sous cette forme :

    id periode
    1 01/2014
    1 06/2014
    2 03/2014
    2 08/2014

    et je cherche à obtenir ceci :

    id periode
    1 01/2014
    1 02/2014
    1 03/2014
    1 04/2014
    1 05/2014
    1 06/2014
    2 03/2014
    2 04/2014
    2 05/2014
    2 06/2014
    2 07/2014
    2 08/2014


    Comme j'ai des milliers d'entreprises, je ne peux pas rajouter ces mois manquants à la main. Je cherche donc une solution qui soit plus adéquate.

    Je vous remercie pour votre aide!

  2. #2
    Nouveau Candidat au Club
    Femme Profil pro
    chargé d'études statistiques
    Inscrit en
    Décembre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : chargé d'études statistiques

    Informations forums :
    Inscription : Décembre 2015
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Je pense avoir trouvé (en tout cas ce code semble fonctionner), je le mets pour ceux qui se poseraient également la question.
    Ce que j'ai fait c'est que j'ai récupéré les dates de début et de fin de présence par établissement et j'ai créée des lignes depuis la date de début jusque la date de fin.

    Par étape :

    1. pour chaque entreprise identifier les dates de début (variable debut) et dates de fin (fin) de présence. Mettre ces variables en format date.
    2.appliquer ce code en spécifiant :
    2.1 mettre en format date la nouvelle variable créée (variable periode2 ici)
    2.2 spécifier la variable à partir de laquelle SAS va créée des lignes (ici : debut) et indiquer la variable de fin pour savoir à quel moment s'arrêter (ici : fin)
    2.3 comme les variables sont en format date, SAS compte le nombre de jour entre la date de fin et la date de début. Comme je veux les données en mensuel, j'indique le pas de 30 (tous les 30 jours) (ici : by 30)
    2.4 indiquer la variable identifiant si on veut le faire pour chaque établissement (dont les périodes sont bien sûr différentes pour chaque établissement pour mon cas)


    data date3 ;
    set date2;
    format periode2 YYMMDD10. ;
    do periode2=debut to fin by 30;
    output;
    end;
    by etab_ic;
    run;


    Voilà, j'espère que c'est assez clair et que ça marchera pour vous.

Discussions similaires

  1. Réponses: 4
    Dernier message: 16/03/2006, 18h47
  2. [WD9] [Etats][Débutant] Ajouter des lignes à un tableau
    Par EpOnYmE187 dans le forum WinDev
    Réponses: 7
    Dernier message: 20/12/2005, 12h20
  3. [Fichier] Ajouter des lignes...
    Par Life Hunter dans le forum Langage
    Réponses: 4
    Dernier message: 26/11/2005, 18h28
  4. Réponses: 14
    Dernier message: 22/09/2005, 16h49
  5. [Fichier] Ajout des lignes de doc dans arraylist
    Par 3adoula dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 29/04/2004, 22h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo