BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
Zumba_Apple
Calcite | Level 5

Hey there,

I have here an example of logistic regression, which spits out the graph of probabilty curve. On this graph, each dot represent all kids that scored a certain standard score (z score) on the NEWFAIR0 test. Now, I want the dots to reflect the numerus they represent, such that if a dot represents one kid, it should be smaller, and if it represents, say, 15 kids, it should be bigger. A dot in my data can represent from 1 to 31 kids. Here is my data and my code for logistic regression, but I dont know how to make the size of the dots proportional to the numerus of kids they represent. Thanks!!

data done4; input newfair0 parentdys N;

datalines;

-3.21 1 1

-2.67 2 3

-2.6 1 1

-2.34 2 4

-1.93 1 3

-1.8 1 1

-1.73 2 2

-1.66 2 2

-1.59 2 2

-1.53 1 1

-1.46 1 3

-1.39 1 1

-1.33 1 9

-1.19 2 2

-1.12 3 3

-1.06 1 5

-0.99 2 2

-0.92 1 4

-0.85 1 2

-0.79 2 5

-0.72 2 12

-0.65 1 3

-0.59 9 23

-0.52 1 5

-0.45 1 1

-0.38 1 4

-0.32 7 9

-0.25 1 6

-0.18 1 10

-0.11 3 17

-0.05 3 5

0.02 1 1

0.09 2 31

0.16 1 3

0.22 2 2

0.29 1 2

0.36 1 25

0.42 0 6

0.49 0 6

0.56 0 1

0.63 0 9

0.69 0 5

0.76 0 4

0.83 0 23

0.9 0 3

0.96 0 5

1.03 0 2

1.16 0 3

1.23 0 5

1.3 0 1

1.43 0 1

1.64 0 1

1.77 0 1

1.84 0 5

1.91 0 3

1.97 0 1

2.11 0 7

2.24 0 2

2.44 0 3

;

run;

ods graphics on;

proc logistic data=done4 plots(only)=(roc(id=obs) effect);

model parentdys/n=newfair0 / scale=none

clparm=wald

clodds=pl

rsquare;

units newfair0=1.00;

run;

ods graphics off;


Probability Curve Fair Spelling ParentDys_PopZaInconsist.jpg
1 ACCEPTED SOLUTION

Accepted Solutions
ChrisNZ
Tourmaline | Level 20

Something like this. You have to add the bubble size you want.

 


ods graphics on;
ods output EffectPlot=EffectPlot;
proc logistic data=done4 plots(only)=(roc(id=obs) effect); model parentdys/n=newfair0 / scale=none clparm=wald clodds=pl rsquare; units newfair0=1.00; output out=t/ profile; run; ods graphics off; proc sgplot data= EffectPlot; band x=_XVAR upper=_UPPER lower=_LOWER ; spline x=_XVAR y=_PROB; bubble x=_XVAR_OBS y=_PROPORTION size=_PROPORTION ; run;

aaa1.PNG 

View solution in original post

6 REPLIES 6
Zumba_Apple
Calcite | Level 5

Thank you. I have already looked at that website. Even though it is helpful in general, it does not help a lot in my case where the probabilities on the y axis are generated by the log regression, so you cannot define them as y=.... in the proc template. That's my main issue - what the code would be for y

ballardw
Super User

There are times when to get the graph you want you generate a data set from a procedure and plot that with tools with more controls.

Most of the analysis procedure charts are designed more for analysis than publication.

Zumba_Apple
Calcite | Level 5

Thanks. Any ideas how i could do that in my case?

ChrisNZ
Tourmaline | Level 20

Something like this. You have to add the bubble size you want.

 


ods graphics on;
ods output EffectPlot=EffectPlot;
proc logistic data=done4 plots(only)=(roc(id=obs) effect); model parentdys/n=newfair0 / scale=none clparm=wald clodds=pl rsquare; units newfair0=1.00; output out=t/ profile; run; ods graphics off; proc sgplot data= EffectPlot; band x=_XVAR upper=_UPPER lower=_LOWER ; spline x=_XVAR y=_PROB; bubble x=_XVAR_OBS y=_PROPORTION size=_PROPORTION ; run;

aaa1.PNG 

Zumba_Apple
Calcite | Level 5

Thanks!! That's exactly what I needed - a code that gets me started from somewhere. Will look into it in more detail.

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 6 replies
  • 1210 views
  • 0 likes
  • 4 in conversation