2
$\begingroup$

I have a sample ($n = 10$) from a Poisson distribution. It was said that the t test with 9 degrees of freedom cannot be used to test $H_0: \lambda = 5$ against $H_1: \lambda \ne 5$.

I know that a Poisson distribution can be approximated by a Normal one for "big" sample sizes. Since we have here $n=10$, is this the reason the t test can't be applied here?

$\endgroup$
1
  • $\begingroup$ I disagree with the premise of the question. An average of 10 Poisson rvs with $\lambda=5$ is normal to an excellent approximation. Same as for one rv with $\lambda=50$. So a t-test would be "valid" in that it would control the type I error rate correctly or close enough. But why would you want to do a t-test when using the Poisson distribution directly is both better and simpler? $\endgroup$ Jan 2, 2021 at 23:38

2 Answers 2

5
$\begingroup$

Consider the sum $T =\sum_{i=1}^{10} X_i,$ where $X_i \stackrel{iid}{\sim} \mathsf{Pois}(\lambda = 5).$ Then $T \sim \mathsf{Pois}(\lambda_{10}=50),$ and $P(T \le 36) + P(T \ge 65) \approx 0.048.$ In R:

ppois(36, 50)
[1] 0.02375891
1-ppois(64, 50)
[1] 0.02360321

Thus an exact test of $H_0: \lambda = 5$ vs. $H_a: \lambda \ne 5$ at about the 4.8% level is to reject $H_0$ for $T \le 36$ or $T \ge 65.$

enter image description here

The distribution $\mathsf{Pois}(50)$ is approximately $\mathsf{Norm}(\mu=50, \sigma-\sqrt{50}),$ so a normal approximation to the exact test is easy to find. Student's t distribution with 9 degrees of freedom is not an appropriate null distribution for your test, and I see no reason to use it (or any other t distribution). [Doing a one-sample t test on Poisson data would compound the inaccuracy by using the sample standard deviation $S$ to approximate the known standard deviation of the null distribution.]

$\endgroup$
0
$\begingroup$

Maybe this is useful:

Making the comparison between using the t-test and the approach by BruceET:

# T-student:

B <- 100000

power_p <- numeric(8)

lower_t <- qt(0.025, 9)
upper_t <- qt(0.975, 9)

for(i in 1:8){
  for (j in 1:B){
    my_sample <- rpois(10, i)
    t_stat[j] <- (mean(my_sample) - 5) / (sd(my_sample)/sqrt(10))
  }
  
  
power_t[i] <-  mean(t_stat <= lower_t | t_stat >= upper_t)
  
}

#Poisson:

power_p <- numeric(8)

low_n <- qnorm(0.025, 50, sqrt(50))
up_n <- qnorm(0.975, 50, sqrt(50))

for(i in 1:8){
  for (j in 1:B){
    my_sample <- rpois(10, i)
    T_s[j] <- sum(my_sample)
  }
  
  
  power_p[i] <-  mean(T_s <= low_n | T_s >= up_n)
  
}
> power_p
[1] 1.00000 0.99960 0.88010 0.29759 0.05589 0.32168 0.77828 0.97092
> power_t
[1] 1.00000 0.99872 0.86741 0.32308 0.05239 0.18314 0.57013 0.87494

Can be seen what would be the problem of using a t-test in this case, the power of the t-test is lower.

Another option to get the confidence interval could be a simple monte carlo simulation.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.