Example of piecewise regression in SAS
https://documentation.sas.com/doc/en/pgmsascdc/9.4_3.4/statug/statug_nlin_examples01.htm
Your question is also known as
Segmented regression models in SAS
By Rick Wicklin on The DO Loop December 14, 2020
https://blogs.sas.com/content/iml/2020/12/14/segmented-regression-sas.html
A segmented regression model is a piecewise regression model that has two or more sub-models, each defined on a separate domain for the explanatory variables.
SAS/STAT User's Guide
The MCMC Procedure
Example 80.12 Change Point Models
https://go.documentation.sas.com/doc/en/pgmsascdc/v_037/statug/statug_mcmc_examples18.htm
Koen
these only demonstrate if the model is quadratic and not linear. I need it for a linear equation.
Do you have many repeated measurements for your patients?
Are the repeated measurements equally spaced and forming a time series?
You could also work with so-called "structural break detection"-methods in time series analysis.
You can detect changing level , changing slope , changing regressor influence , changing variability , changing seasonality , ...
Koen
it is equally spaced and structured.
I'm not familiar with Time series. Do you have an example?
SAS® 9.4 and SAS® Viya® 3.5 Programming Documentation
SAS/ETS 15.3 User's Guide
The UCM Procedure
Example 42.7 Detection of Level Shift
https://go.documentation.sas.com/doc/en/pgmsascdc/9.4_3.5/etsug/etsug_ucm_examples07.htm
(checkbreak option in LEVEL statement of PROC UCM)
The UCM procedure analyzes and forecasts equally spaced univariate time series data by using an unobserved components model (UCM). The UCMs are also called structural models in the time series literature.
Koen
I don't have time value for the interval= option!!
You can make a row number and use interval=day (space between adjacent observations = 1) :
Like here :
data work.class; set sashelp.class; rownum=_N_; run;
proc ucm data=work.class;
id rownum interval=day;
model height;
irregular;
level plot=smooth checkbreak;
estimate;
*forecast plot=decomp;
run;
/* end of program */
[EDIT]
Do you have a datetime variable for your measurements?
In that case, and if the (equal) interval in-between measurements is not a typical one (like day, week, 10-days, month, ...), then you can make a custom interval and specify that one in interval= option.
Koen
Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.
If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website.
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.