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 | ... |
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;
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;
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.