How to do this in SAS:
I want to replace a missing value with the mean of lagged value and its next value?
i believe it could be achieved by using the lag function.
may be sample data and the expected output could help to get better solution.
Thanks,
Jag
There have been a lot of the same questions. https://communities.sas.com/thread/59681
Or google: "impute missings site:communities.sas.com"
If you have access to SAS/ETS, use the Expand procedure :
data myData;
input time value;
datalines;
0 -100
1 10
2 25
3 .
4 35
5 .
6 .
7 55
8 -1
;
proc expand data=myData out=filledData method=none;
id time;
convert value=filledValue / transformout=(missonly cmovave 3);
run;
proc print data=filledData noobs; run;
PG
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!
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.