This is a root-finding problem. Define
f(lambda) = target - cdf("poisson", n, lambda);
and solve for the zeros of f. This is always possible (and has a unique solution) because the CDF is an increasing function of lambda. (Of course, 0<target<1).
To solve the problem, find a root-finding algorithm such as the bisection method implemented in SAS. (I believe that the %inv macro at
http://ftp.sas.com/samples/A57496 gives you what you need; Although it is written as a macro, you ought to be able to decipher it.)
If you have SAS/IML, see
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
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.