Date: Tue, 21 Nov 2000 10:17:24 -0500
Reply-To: "Fehd, Ronald J." <rjf2@CDC.GOV>
Sender: "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From: "Fehd, Ronald J." <rjf2@CDC.GOV>
Subject: Re: Report writing - grid-style data for test scoring
Content-Type: text/plain; charset="iso-8859-1"
> From: Barry Walton [mailto:bwalton@MARAUDER.MILLERSV.EDU]
> I'm running SAS 6.12 (batch mode) on a Solaris box.
> ... [snippage occurs]
> Basically, I have a large dataset that has the student ID,
> name, answers
> to individual questions, the key (correct answers), weights for each
> question, and a 'binary' grid (1 if they got the question correct; 0
> otherwise). I am trying to design a report that looks like this :
[see below .sig]
I'm not sure from your question and example where you want to put these two
pieces
the obvious choices are
1. one on top of the other, which is the way you presented them
2. side by side
getting a proc PRINT with all the variable names stacked is always a cogent
reminder of what I said I wanted the procedure to do for me: 'gimme all of
it'!
suggestion 1: one then the other
proc PRINT data = WHATEVER;
var Var1 Var2 ...;
proc PRINT data = WHATEVER;
var VarA VarB ...;
of course you'll have a page break between the two proc PRINTS.
suggestion: consider delivering via ODS-HTML or other output like RTF
when desired, a print-page of HTML will not have page breaks.
I think I am correct on that.
suggesiont 2: is to sit down and kludge some very terse variable labels.
your matrix of rows=Legend+Key+Answer and columns=Q1+Q2+Q3
will have to be shoe-horned into one set of $char1. character variables in
order to accommodate the 'A'/'B/ and '0'/'1' sets of values.
hm, well, you could do that with numerics variables and formats ...
proc PRINT data = WHATEVER label split = ' ';
label NmbrCorr = '# +'
NmbrWrong = '# -'
PerCent = '%'
...
Legend = 'Legend'
Q1 = 'Q1'
...
;
var NmbrCorr NmbrWrong Percent [ids] Legend Q:;
Ron Fehd the structure maven CDC Atlanta GA USA RJF2@cdc.gov
OpSys: WinNT Ver: 8.1
---> cheerful provider of UNTESTED SAS code!*! <---
e-mail your SAS improvements to: suggest@sas.com
If you always try to be logical,
you probably won't ever have much sorrow,
or much fun.
-- Ashleigh Brilliant pot-shot #4438
>
> Student
> Number Number Percent Section Section
> OBS Number Student Name
> Correct Wrong Right Percentile Rank
>
> 3 000000000 BUSH GW
> 17 8
> 68 67 10
>
> This part I have working (simply using PROC PRINT with a PAGEBY name
> statement).
>
>
> I would like to *add* this to the above line for each
> student, summarizing how they did individually :
>
>
> Legend Q1 Q2 Q3 Q4 Q5
> Key A B A C B
> Answer A C A B B
> Binary 1 0 1 0 1
> Weight 3 1 1 2 1
> Total_points 3 0 1 0 1
>
> Note that key is the correct answer, answer is the student response,
> binary is the corrct(1)/wrong(0) grid, weight is the item weight, and
> total points is weight times the binary variable.
>
> If I use a simple proc print, I get the following messy output :
>
> Student
> output - page
> by name 14:31 Monday, November 20, 2000 3
>
> --------------------------------------------------------
> NAME=BUSH GW
> --------------------------------------------------------
>
> C P P
> O E R
> R W R C
> K B O
> N R R C N R K K K K K K K
> K K E Q B B B B B B B B B I O O O O O O O O O P
> O S A E O E T A E E E E E E E
> E E Y Q Q Q Q Q Q Q Q Q Q I I I I I I I I I N P P P P P P P P P T
> B S M C N N L N Y Y Y Y Y Y Y
> Y Y 1 Q Q Q Q Q Q Q Q Q 1 N N N N N N N N N 1 T T T T T T T T T 1
> S N E T G T E K 1 2 3 4 5 6 7
> 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0
>
> 3 000000000 BUSH GW 17 8 68 67 10 3 1 2 2 4 2 3
> 4 3 1 4 1 2
> 2 3 4 4 4 3 1 0 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
>
> To make it worse, the number of questions (and therefore the
> number of key
> items, weights, binary grid, etc. varies from test to test.
> It can be as
> high as 100.
>
> Does anyone have a manual, suggestion, anything to try to get
> this format
> for the report. I have RTFM on proc tabluate, proc report,
> proc summary,
> and proc print, and don't think anyone of these will help.
>
> The only thing I can think of is using a bunch of put statments and
> possibly macros to write an output file - not an easy task...
>
> Any suggestions would be greatly appreciated.
>
> E-mail : bwalton@marauder.millersville.edu
> Barry.Walton@millersville.edu
>
> Phone : (717) 871 - 5888
>
|