BookmarkSubscribeRSS Feed
sivakarthik
Calcite | Level 5

I would like to populate the last record of a variable as a new variable

 

Input

 

Sno Closing Price

1        10

2         10.5

3          10.2

4          10.4

5          10.6

 

Output:

 

Sno Closing Price   New_Closing Price

1        10                 10.6

2         10.5             10.6

3          10.2            10.6

4          10.4            10.6

5          10.6            10.6

 

 

I would like to obtain this output using both a datastep as well as a proc sql if possible.

 

 

Thank you much in advance.

2 REPLIES 2
Haikuo
Onyx | Level 15

Here is one way,

 

 

data have;
	input Sno Closing_Price;
	cards;
1        10
2         10.5
3          10.2
4          10.4
5          10.6
;
run;

data want;
	if _n_=1 then
			set have (rename=closing_price=new_closing keep=Closing_Price) nobs=nobs point=nobs;
			
	set have;
run;
LinusH
Tourmaline | Level 20

Two "why's":

  1. why both SQL and data step?
  2. Why do you want to add this value to all rows (the requirement...)?
Data never sleeps

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
  • 2 replies
  • 1183 views
  • 0 likes
  • 3 in conversation