- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
I appreciate your help.
I have data set shown below.
ID time NIBP
1 1 89
1 2 90
1 3 78
1 4 87
1 5 88
1 6 89
1 7 90
2 1 77
2 2 88
2 3 90
3 1 99
3 2 100
I would like to count point where NIBP=<88 for individual ID. I would like to acquire an output like,
ID count
1 3
2 1
3 0
In my actual data set, the number of ID is 18 thousands and the length of the time is different for each ID.
Thank you very much for your kindness in advance.
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
data have;
input ID time NIBP;
cards;
1 1 89
1 2 90
1 3 78
1 4 87
1 5 88
1 6 89
1 7 90
2 1 77
2 2 88
2 3 90
3 1 99
3 2 100
;
proc sql;
create table want as
select id, sum(NIBP le 88) as count
from have
group by id;
quit;
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
UNTESTED CODE
data have2;
set have;
if nibp<=88 then flag=1;
else flag=0;
run;
proc summary nway data=have2;
class id;
var flag;
output out=want sum=count;
run;
Paige Miller
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Dear PaigeMiller,
I appreciate for your immediate reply.
I will try later the code you told me.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
data have;
input ID time NIBP;
cards;
1 1 89
1 2 90
1 3 78
1 4 87
1 5 88
1 6 89
1 7 90
2 1 77
2 2 88
2 3 90
3 1 99
3 2 100
;
proc sql;
create table want as
select id, sum(NIBP le 88) as count
from have
group by id;
quit;
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Dear novinosrin,
I really appreciate for your prompt replay.
The code you told me perfectly worked!
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Thank you @ykoba If you choose @PaigeMiller 's solution, then mark his solution as accepted or if you choose mine, mark mine as accepted and close the thread please
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Dear novinosrin,
I really appreciate your kindness!