J'essaye de formater la sortie de proc report
en texte brut. J'ai une variable par laquelle je groupe des observations et qui s'étend sur deux lignes. Cela provoque une rupture de ligne apparente et sépare les observations groupées. Existe-t-il un moyen efficace de résoudre ce problème?Alignement vertical lors de la mise en forme de la sortie de rapport de proc en texte brut
L'exemple minimal suivant illustre le problème.
EDIT: Le programme devrait de préférence également fonctionner pour une seule observation chez certains sujets.
programme:
* Toy data ;
data mydata;
length subj $ 20;
input subj $ val val2;
datalines;
ID001|M 7.1 5.2
ID001|M 7.1 4.9
ID001|M 7.1 5.3
ID001|M 7.1 5.6
ID001|M 7.1 5.7
ID020|F 7.1 3.2
ID020|F 7.3 2.9
ID020|F 7.2 0.9
ID300|M 7.2 1.2
ID300|M 7.2 1.8
;
run;
* Create report ;
ods listing;
proc report data=mydata headline headskip split='|';
column(subj val val2);
define subj/order flow 'Subject ID|Sex';
define val/'Value 1';
define val2/'Value 2';
break after subj/skip;
run;
ods _all_ close;
sortie:
Subject ID
Sex Value 1 Value 2
------------------------------------------
ID001 7.1 5.2
M
7.1 4.9
7.1 5.3
7.1 5.6
7.1 5.7
ID020 7.1 3.2
F
7.3 2.9
7.2 0.9
ID300 7.2 1.2
M
7.2 1.8
sortie désiré:
Subject ID
Sex Value 1 Value 2
------------------------------------------
ID001 7.1 5.2
M 7.1 4.9
7.1 5.3
7.1 5.6
7.1 5.7
ID020 7.1 3.2
F 7.3 2.9
7.2 0.9
ID300 7.2 1.2
M 7.2 1.8
Alternative sortie désirée:
Subject ID
Sex Value 1 Value 2
------------------------------------------
ID001
M 7.1 5.2
7.1 4.9
7.1 5.3
7.1 5.6
7.1 5.7
ID020
F 7.1 3.2
7.3 2.9
7.2 0.9
ID300
M 7.2 1.2
7.2 1.8
Ou quelque chose de semblable à ce qui sépare visuellement clairement les groupes.
Merci pour la réponse. Malheureusement, cela devrait aussi fonctionner pour 1 observation par sujet. Avez-vous une suggestion pour gérer cela? –
Je pense que vous voudrez aussi OPTIONS MISSING = ''; si vous ne l'avez pas déjà. Puis-je vous demander pourquoi vous utilisez la sortie LISTING? –