I have a panel data, which I would like to display by using PROC REPORT.
proc report data=sashelp.stocks
out=lat(drop=_break_) nowd;
where year(date)>= 2005;
column Stock Date, (AdjClose Volume);
define Stock / group left;
define Date/ across order= internal;
COMPUTE AdjClose ;
CALL DEFINE(_COL_, "style", "STYLE=[BACKGROUND=MISTYROSE]");
ENDCOMP;
COMPUTE Volume;
CALL DEFINE(_COL_, "style", "STYLE=[BACKGROUND=lightblue]");
ENDCOMP;
quit;
Date
03JAN05
01FEB05
01MAR05
01APR05
02MAY05
01JUN05
01JUL05
01AUG05
01SEP05
03OCT05
01NOV05
01DEC05
Stock
AdjClose
Volume
AdjClose
Volume
AdjClose
Volume
AdjClose
Volume
AdjClose
Volume
AdjClose
Volume
AdjClose
Volume
AdjClose
Volume
AdjClose
Volume
AdjClose
Volume
AdjClose
Volume
AdjClose
Volume
IBM
$91.62
5,960,945
$90.97
4,455,657
$89.79
5,025,627
$75.05
10,709,200
$74.43
6,896,904
$73.10
6,439,536
$82.23
8,056,590
$79.62
4,801,386
$79.22
5,772,280
$80.86
7,019,666
$88.01
5,556,471
$81.37
5,976,252
Intel
$21.81
82,481,585
$23.39
78,924,846
$22.65
63,823,945
$22.93
67,651,157
$26.38
64,584,867
$25.46
55,191,463
$26.55
55,455,755
$25.24
45,049,221
$24.19
53,493,957
$23.06
58,262,005
$26.27
56,234,966
$24.57
54,107,733
Microsoft
$25.77
79,642,818
$24.75
75,992,316
$23.78
72,899,708
$24.89
77,090,234
$25.46
62,699,752
$24.52
62,956,713
$25.28
69,046,604
$27.10
65,529,978
$25.47
66,976,476
$25.44
72,132,475
$27.48
71,469,194
$25.96
62,892,384
I was wondering if I can make two "rows" (one for AdjClose and the other for Volume) for each group (i.e., IBM, Intel, Microsoft).
What I would like to have:
03JAN05 01FEB05 ......
IBM AdjClose
Volume
Intel AdjClose
Volume
Microsoft AdjClose
Volume
... View more