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

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Actuaire
    Inscrit en
    janvier 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Actuaire

    Informations forums :
    Inscription : janvier 2019
    Messages : 1
    Points : 1
    Points
    1

    Par défaut Création de la table de la moyenne des excès

    Bonjour à tous,
    _
    Je dispose d'une table de données (table1) contenant un nombre N de montants de sinistres (Montant_1, Montant_2, Montant_3, ...., Montant_N)
    Je cherche désespérément à calculer la moyenne des excès pour des seuils allant de 100 à 1.000.000 par pas de 100 (donc 10.000 seuils différents)

    L'excès pour le sinistre 1 et pour le seuil 100 se calcule de la façon suivante : max (Montant _1 - 100 , 0)
    La moyenne des excès pour le seuil u se calcule en sommant les excès dépassant le seuil u, divisé par le nombre d’observations qui dépassent ce seuil de 100

    J'aimerais donc obtenir une nouvelle table (moyenne_Excès) avec 10.000 observations, une variable donnant le seuil (100, 200, ..., 1.000.000) et une autre variable donnant la moyenne des excès.

    Je me doute qu'il faut utiliser un vecteur pour les 10.000 seuils et faire une boucle pour calculer pour chaque seuil :
    - le nombre d'observation qui dépasse le seuil
    - la somme des excès pour mes N montants de sinistres

    Mais j'ai beau tester, je n'obtiens rien qui ressemble à ce que je souhaite !!!

    Merci d'avance pour votre aide !

  2. #2
    Membre éprouvé
    Inscrit en
    novembre 2009
    Messages
    461
    Détails du profil
    Informations forums :
    Inscription : novembre 2009
    Messages : 461
    Points : 915
    Points
    915

    Par défaut Création de la table de la moyenne des excès

    Bonjour,

    Je vous conseille d'avancer pas à pas sur un petit jeu de données.

    Je vous propose cette macro pour calculer les différents excès :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    data test;
      input montant;
      cards;
    100
    300
    500
    700
    900
    ;
    run;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    %macro exces;
      data test;
        set test;
        %do seuil=100 %to 1000 %by 100;
          exces_&seuil=max(montant - &seuil, 0);
          if exces_&seuil=0 then exces_&seuil=.; /* pour faciliter le calcul de la moyenne */
        %end;
      run;
    %mend;
     
    %exces;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
                exces_   exces_   exces_   exces_   exces_   exces_   exces_   exces_   exces_   exces_
      montant     100      200      300      400      500      600      700      800      900     1000
        100         .        .        .        .        .        .        .        .       .        .
        300       200      100        .        .        .        .        .        .       .        .
        500       400      300      200      100        .        .        .        .       .        .
        700       600      500      400      300      200      100        .        .       .        .
        900       800      700      600      500      400      300      200      100       .        .
    Vous pourrez ensuite calculer la moyenne pour chaque seuil.

    Cordialement,

Discussions similaires

  1. Réponses: 7
    Dernier message: 13/11/2014, 11h57
  2. Réponses: 3
    Dernier message: 06/04/2009, 21h58
  3. Réponses: 4
    Dernier message: 22/11/2007, 19h23
  4. [DAO]Création d'un table des matières
    Par IDE dans le forum Word
    Réponses: 1
    Dernier message: 01/04/2007, 17h47
  5. Réponses: 5
    Dernier message: 21/05/2006, 13h23

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