statistics - Multiple boxplots in SAS -
I have this data set and I want to show all the 9 plus plot plots on the same plot They are in different scales Can you please tell me what is an easy way to do this?
I'm a novice SAS user, so I appreciate some advice.
Raw data; Input id $ family distortion kandan maize sorg millet bull cattle dishes; Datalines; FARM1 12 80 1.5 1 3 0.25 2 0 1 FARM2 54 8 6 4 0 1 6 32 5 FARM3 11 13 0.5 1 0 0 0 FARM4 21 13 2 2.5 1 0 1 FARM5 61 30 3 5 0 4 21 FARM6 20 70 0 2 3 0 2 0 3 FARM7 29 35 1.5 2 0 0 0 0 FARM8 29 35 2 3 2 0 0 0 FARM 9 57 9 5 5 0 4 5 2 FARM10 23 33 2 2 1 0 2 1 7 FARM11 13 9 0.5 2 2 0 0 0 FARM12 15 9 2 2 2 0 0 FARM13 27 3 1.5 0 2 1 0 0 FARM14 28 5 2 0.5 2 2 5 5 FARM15 52 5 7 1 7 4 4 3 3 5 FARM16 12 10 2 2.5 3 0 0 0 FARM17 25 30 1 1 4 0 2 5 5 FARM18 5 3 1 0 1 0.5 0 3 FARM 1 9 45 30 4.5 1 1 6 13 20 FARM 20 6 7 1 1 1 1 2 0 5 FARM21 17 8 1.5 0.5 1.5 0.25 0 2 FARM22 22 6 3 2 3 1 3 2 2 FARM23 43 40 7 3 3 0.5 6 2 3 FARM24 66 36 0 0.5 5 5 0 0 FARM25 15 3 1 0 1.5 0.5 1 0 1 FARM26 26 5 2 1.5 2 2 1 0 FARM27 31 5 1.5 1 3 2 2 0 FARM28 37 2 3 2 3 5 3 5 5 FARM29 81 2 8 4 4 12 7 8 13 FARM 30 14 10 0 0.5 3 1 0 0 FARM31 20 7 2 1 4 3 2 5 5 FARM32 26 7 2 1 2 2 2 2 FARM33 12 10 0.5 1 3 1 0 0 FARM34 18 35 4 3 3 3 4 FARM 35 11 29 1 0.5 3 2 2 0 2 FARM36 50 29 5 3 5 4 4 4 FARM37 7 90 1 1 0 0 0 FARM38 26 9 2 1 3 0 0 0 0 FARM39 19 33 1 1.5 0 4 2 0 0 FARM40 43 33 3 3 4 7 4 3 FARM41 18 12 3 1 1 2 1 1 FARM42 64 20 3 5 2 2 4 6 6 FARM43 61 25 9 7 3 8 4 17 FARM44 18 3 0.5 0.5 2 2 4 4 FARM45 11 2 0.5 0 1.5 1.5 1 1 FARM46 30 3 4 2 4 0 4 2 FARM47 16 1.5 2 0.5 2 2 2 FARM48 46 1 0.75 1 3 2 2 2 FARM49 18 2 1.5 0.5 2 2 2 2 FARM50 81 3 12 1.5 10 8 11 14 15 FARM51 15 0 1.5 1.5 2.5 0 1 0 FARM52 26 11 3.5 2 4 2 2 2 FARM53 10 11 0 0 1.5 0 0 0 FARM54 40 12 5 3 6 1 8 17 10 FARM55 82 4 11 7 5 0.5 8 5 0 FARM56 40 5.5 6 4 2.5 1 3 2 2 FARM57 29 8 3 2 4 2 2 2 FARM58 23 5 5 4 3 1 1 0 FARM59 53 4 3 3 3 6 0 FARM60 57 3.5 9 8 0 0 10 23 FARM61 23 4 2 2 0.5 4 2 0 FARM62 9 31 2 2 0 2 1 0 FARM63 22 35 3 2 3 5 5 6 1 FARM64 25 35 3 1 2.5 0 4 8 10 FARM65 20 0 1.5 1 3 0 1 6 FARM 27 27 41 1.1 0.25 1.5 1.5 0 3 1 FARM67 30 19 2 2 4 1 2 5 5 FARM68 77 18 8 4 6 4 6 8 6 FARM69 13 100 0.5 0.5 0 1 4 4 FARM70 24 100 2 3 0 0.5 3 14 10 FARM 71 29 90 2 1.5 1.5 1.5 2 0 2 FARM72 57 90 10 7 0 1.5 7 8 7; Run;
You need to move the values and use group = statement.
Step
Sort by ID 1
Transpose 2 data
3 Adjust labels for display
Plot SGPLOT with 4 PROC
proc sort data = raw; By ID; Run; Proc Transfer Data = Raw Out = raw_t; By ID; Run; Data raw_t; Set raw_t; Label _name_ = "variable"; Label col1 = "value"; Run; ODS HTML; Title "My Box Plot"; Proc sgplot data = raw_t; Vbox col1 / group = _name_; Run; ODS HTML off;
produces:
Comments
Post a Comment