Solved
New Contributor
Posts: 4

# How to count point below certain threshold.

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.

Accepted Solutions
Solution
a month ago
Super User
Posts: 2,061

## Re: How to count point below certain threshold.

``````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;``````

All Replies
Posts: 3,275

## Re: How to count point below certain threshold.

[ Edited ]

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
New Contributor
Posts: 4

## Re: How to count point below certain threshold.

Dear PaigeMiller,

I will try later the code you told me.

Solution
a month ago
Super User
Posts: 2,061

## Re: How to count point below certain threshold.

``````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;``````
New Contributor
Posts: 4

## Re: How to count point below certain threshold.

Dear novinosrin,

I really appreciate for your prompt replay.

The code you told me perfectly worked!

Super User
Posts: 2,061

## Re: How to count point below certain threshold.

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

New Contributor
Posts: 4

Dear novinosrin,