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-2024.png

Don't miss out on SAS Innovate - Register now for the FREE Livestream!

Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.

 

Register now!

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
  • 14426 views
  • 3 likes
  • 5 in conversation