Hello,
I have this data that I want to sort by SID New_dt and NIPR.
For each subject I want just the minimum NPIR for that day. I also want to delete all observations with missing NPIR
For example this data should be reduced to Data A below:
|
Obs |
SID |
New_dt |
NPiR |
|
1 |
10155 |
. |
. |
|
2 |
101004 |
10/06/15 |
. |
|
3 |
101004 |
10/14/15 |
4.2 |
|
4 |
101004 |
10/16/15 |
4.5 |
|
5 |
101004 |
10/19/15 |
4.1 |
|
6 |
101004 |
10/19/15 |
4.3 |
|
7 |
101004 |
10/19/15 |
4.6 |
|
8 |
101023 |
11/03/15 |
. |
|
9 |
101023 |
11/05/15 |
4.2 |
|
10 |
101023 |
11/06/15 |
1.3 |
|
11 |
101023 |
11/07/15 |
3.8 |
|
12 |
101023 |
11/07/15 |
2.4 |
Should be reduced TO Data A :
|
3 |
101004 |
10/14/15 |
4.2 |
|
4 |
101004 |
10/16/15 |
4.5 |
|
5 |
101004 |
10/19/15 |
4.1 |
|
9 |
101023 |
11/05/15 |
4.2 |
|
10 |
101023 |
11/06/15 |
1.3 |
|
12 |
101023 |
11/07/15 |
2.4 |
A one-step way:
proc summary data=have nway;
where npir > .;
class sid new_dt;
var npir;
output out=want (drop=_type_ _freq_) min=;
run;
If your actual data set contains additional variables, it becomes more problematic and we'd have to examine some of the details within the data.
A one-step way:
proc summary data=have nway;
where npir > .;
class sid new_dt;
var npir;
output out=want (drop=_type_ _freq_) min=;
run;
If your actual data set contains additional variables, it becomes more problematic and we'd have to examine some of the details within the data.
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!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.