hi,
I have a question which shouldn't be too complicated but which gives me trouble.
I have the following data:
data a;
input company $ price;
datalines;
A 1
A 2
A 4
A 5
B 2
B 4
B 7
B 9
;
run;
What I want to do is to create i = _n_ by company.
company | pric | i |
A | 1 | 1 |
A | 2 | 2 |
A | 4 | 3 |
A | 5 | 4 |
B | 2 | 1 |
B | 4 | 2 |
B | 7 | 3 |
B | 9 | 4 |
and I used the code:
data a;
set a;
i = _n_;
by company;
run;
but it gave me i = 1 to 9 and didn't notice the different companies.
Thank you!
data a; set a; by company; if first.company then i=1; else i+1; run;
Art, CEO, AnalystFinder.com
data a; set a; by company; if first.company then i=1; else i+1; run;
Art, CEO, AnalystFinder.com
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!
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.
Ready to level-up your skills? Choose your own adventure.