Bonjour,
J'ai un énorme problème. En effet j'ai une table SAS qui se présente sous la forme
Le but est d'obtenir en sortie la table ci-dessous:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 data person; infile datalines delimiter=','; input CREANCE $14. POND REPOR RISK $ COUNTRY$; datalines; 20241514156EUR,272186, 136093,ART122, FR 20241514156EUR,272186, 136093,ART122, NO 20085273456EUR,341928, 65688,ART126-b, FR 20085273456EUR,341928, 170964,ART126-a, FR ;
Les règles de gestion est la suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 data person1; infile datalines delimiter=','; input CREANCE $14. POND REPOR RISK $ COUNTRY$; datalines; 20241514156EUR,272186, 136093, ART122-ART122,FR-NO 20085273456EUR,341928, 236652, ART126-b-ART126-a,FR-FR ;
*Pour les deux lignes ci-dessous, la colonne 1 a des données identiqus ainsi que la colonne 4. Comme la colonne 5 a des valeurs differentes alors nous aurons en retour 20241514156EUR,272186, 136093, ART122-ART122,FR-NO
20241514156EUR,272186, 136093,ART122, FR
20241514156EUR,272186, 136093,ART122, NO
* Pour les lignes ci-dessous , on somme les montants de la troisième colonne car la colonne 4 a des données differentes et la colonne 5 des données identiques.
20085273456EUR,341928, 65688,ART126-b, FR
20085273456EUR,341928, 170964,ART126-a, FR
J'ai donc essayé ce code mais hélas les données ne sont pas sommées pour le second cas.
Merci d'avance pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 person1; set person (rename=(risk=_risk country=_country repor=_repor)); by creance notsorted; retain repor risk country ; length risk $100 country $20 ; if first.creance then do; repor = _repor; risk = _risk; country = _country; end; else do; repor = repor + _repor risk = catx('-',risk,_risk); country = catx('-',country,_country); end; if last.creance then output; drop _risk _country repor; run;
Partager