## Generating new variable

Solved
Frequent Contributor
Posts: 89

# Generating new variable

I have this type of data:

 Hour X 0 70232 1 68422 2 67014 3 66068 4 65781 5 66308 6 67559 7 69150 8 69788 9 70685

and I'd like to have a delta(x) as a new variable delta(x) = Next - Current so the data would look like this:

 Hour X Delta X 0 70232 -1810 1 68422 -1408 2 67014 ... 3 66068 ... 4 65781 ... 5 66308 ... 6 67559 ... 7 69150 ... 8 69788 ... 9 70685 ...

Accepted Solutions
Solution
4 weeks ago
Super User
Posts: 2,041

## Re: Generating new variable

``````data have;
input Hour	X;
cards;
0	70232
1	68422
2	67014
3	66068
4	65781
5	66308
6	67559
7	69150
8	69788
9	70685
;

data want;
merge have have(firstobs=2 rename=(x=_x));
delta=_x-x;
drop _x;
run;``````

All Replies
Occasional Contributor
Posts: 17

## Betreff: Generating new variable

Hey,

you can find a solution in this post Difference between values in two rows

Solution
4 weeks ago
Super User
Posts: 2,041

## Re: Generating new variable

``````data have;
input Hour	X;
cards;
0	70232
1	68422
2	67014
3	66068
4	65781
5	66308
6	67559
7	69150
8	69788
9	70685
;

data want;
merge have have(firstobs=2 rename=(x=_x));
delta=_x-x;
drop _x;
run;``````
Frequent Contributor
Posts: 89

## Re: Generating new variable

Posted in reply to novinosrin
thank you, sir
☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
• 3 replies
• 109 views
• 0 likes
• 3 in conversation