Invalid arugument error

Frequent Contributor
Posts: 75

Invalid arugument error

Hi all, 


I wrote this code to calculate the Incidence Rate of few patients in my dataset. 

*making the IR table;
proc sql ;
	create table _04_allinf_IR as 
	select count(enrolid) as N
			,sum(post_ind) as  events
			,sum(PY) as Person_Years
			,(SUM(post_ind)/SUM(PY))*100000 as IR
			,CINV(0.025,2*SUM(post_ind))/(2*SUM(PY))*100000 as Lower95
			,CINV(0.975,2*(SUM(post_ind)+1))/(2*SUM(PY))*100000 as Upper95
	from _04_PY ;
quit ;


but I am getting this error. How to resolve this ?

*making the IR table;
68         proc sql ;
69         	create table _04_allinf_IR as
70         	select count(enrolid) as N
71         			,sum(post_ind) as  events
72         			,sum(PY) as Person_Years
73         			,(SUM(post_ind)/SUM(PY))*100000 as IR
74         			,CINV(0.025,2*SUM(post_ind))/(2*SUM(PY))*100000 as Lower95
75         			,CINV(0.975,2*(SUM(post_ind)+1))/(2*SUM(PY))*100000 as Upper95
76         	from _04_PY ;
NOTE: Invalid argument 2 to function CINV. Missing values may be generated.
NOTE: Table WORK._04_ALLINF_IR created, with 1 rows and 6 columns.


Regular Contributor
Posts: 235

Re: Invalid arugument error

Probably dividing by zero.
Super User
Posts: 2,512

Re: Invalid arugument error

Or probably =0.

Create a variable with the value of the second argument since that's where the error is

, 2*SUM(post_ind) as ARG


Ask a Question
Discussion stats
  • 2 replies
  • 3 in conversation