🔒 This topic is solved and locked.
Need further help from the community? Please
sign in and ask a new question.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Posted 03-11-2021 02:05 AM
(2519 views)
Hi, I'm new to SAS and I'm looking for a way to assign the maximum value of a group to the MaxInGroup column like below:
Group | Value | MaxInGroup (the resulting column)
A | 1 | 2
A | 2 | 2
B | 2 | 4
B | 3 | 4
B | 4 | 4
C | 5 | 5
What I did is to use the proc sort statement to arrange the Group and Value column in descending order and if first.Group=1 and first.Value=1, assign MaxInGroup = Value. But I'm stuck at how to assign the same MaxInGroup value for the rest of the group.
Thanks a lot.
1 ACCEPTED SOLUTION
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Like this?
proc sql;
create table WANT as
select *, max(VAR) as MAX
from TABLE
group by ID;
quit;
No need for a prior sort
2 REPLIES 2
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Like this?
proc sql;
create table WANT as
select *, max(VAR) as MAX
from TABLE
group by ID;
quit;
No need for a prior sort
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
That worked! thanks very much!