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

Snap.PNG

so,fo example i have this results (PROC REG). now i have to show regresson equaton (which is y=0.33096x+1028.57177) on my graph. Moreover,  i need find  "y" for different x?

Thank you. 

 

Goal: Displaying Regression Equations in Fit Plots and use this equation to find "y" for certain x

1 ACCEPTED SOLUTION

Accepted Solutions
Rick_SAS
SAS Super FREQ

You didn't say what version of SAS you are using, but here how to use PROC SGPLOT to display the slope and intercept of a regression line.

 

If you want to get REALLY fancy, you can use string concatenation to construct an "equation" and display the equation.

 

There are many ways to score a regression model. See examples and explanations in this article: Techniques for scoring a regression model in SAS

View solution in original post

4 REPLIES 4
Reeza
Super User

How are you making your graph? Where do you want to include equation?

 

Look at score and/or proc score to calculate predictions. 

PGStats
Opal | Level 21

If you are plotting using SGPLOT, use INSET statement to show the equation.  If you want the predicted y values for your data x values, then use an OUTPUT statement in PROC REG. You can also create the SAS code for the calculation of predicted values in a separate data step with the CODE statement in PROC REG.

PG
Ksharp
Super User

1) " calculate predicted value for new observation"
Put your train table and test table together, then you will magically find SAS has already done it for you .
2) "show regression equation "
Save these parameter and use proc sgplot get it .

I remember proc gplot can directly get the fitted function no need save these parameter. But I can't recall that .




data train;
 set sashelp.class(keep=weight height);
run;

data test;
 height=71;output;
 height=72;output;
run;

data have;
 set train test;
run;

proc reg data=have outest=est noprint;
model weight=height;
output out=want predicted=predicted;
run;
proc print data=want noobs;run;
data _null_;
 set est;
 call symputx('func',cats('weight=',intercept,'+',height,'*height'));
run;
proc sgplot data=train aspect=1;
reg x=height y=weight/ cli clm;
inset "&func"/ position=topleft textattrs=graphdata1(size=12);
run;
Rick_SAS
SAS Super FREQ

You didn't say what version of SAS you are using, but here how to use PROC SGPLOT to display the slope and intercept of a regression line.

 

If you want to get REALLY fancy, you can use string concatenation to construct an "equation" and display the equation.

 

There are many ways to score a regression model. See examples and explanations in this article: Techniques for scoring a regression model in SAS

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!

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 4 replies
  • 15086 views
  • 3 likes
  • 5 in conversation