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

Hi,

 

I would like to ask a simple question to you. Let's pretend I have two variables and one of them keep records as date values or keep missing values based on CLIENTNO. I want to replace the missing values with date values into same variable.

 

If you can examine my sample data set as below, you can understand my question better.

 

Data Have;
Length CLIENTNO 8 DATE $ 20;
Infile Datalines Missover;
Input CLIENTNO DATE;
Datalines;
1 201601
1 201601
1 .
2 .
2 201602
2 .
3 201603
3 201603
3 .
4 201604
4 201604
4 201604
;
Run;

Desired

Desired.png

 

Or I can also create this desired output in new variable.

 

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions
Reeza
Super User

Here's the SQL way:

proc sql;
	create table want as
		select *, max(date) as date_filled
			from have
				group by clientNo;
quit;

And a data step way:

 

proc sort data=have;
	by clientno descending date;
run;

data want_data;
	set have;
	by clientNo;
	retain date_filled;

	if first.clientNo then
		date_filled=date;
run;

View solution in original post

3 REPLIES 3
Reeza
Super User

Can you assume the value of DATE is constant throughout all ClientNo?

ertr
Quartz | Level 8

I think, I can say. My anticipation is that way.

Reeza
Super User

Here's the SQL way:

proc sql;
	create table want as
		select *, max(date) as date_filled
			from have
				group by clientNo;
quit;

And a data step way:

 

proc sort data=have;
	by clientno descending date;
run;

data want_data;
	set have;
	by clientNo;
	retain date_filled;

	if first.clientNo then
		date_filled=date;
run;

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 3 replies
  • 1335 views
  • 0 likes
  • 2 in conversation