# Prediction Intervals by meta package

I am using meta 4.9-5 package for conducting meta-analysis on correlation data. But I cannot figure out why it is unable to calculate lower and upper prediction intervals even I have set prediction = TRUE. Is it due to the small sample size (2 in the following sample code)? Any help is highly appreciated.

# Load required library
library(meta)

# Data to be processed
D2P <- data.frame(stuid = c('S1','S2'),
r = c(0.156, 0.117),
n = c(559, 206))
# Conducting the meta analysis
ma <- metacor(cor = r, data = D2P, n = n, studlab = stuid,
prediction = T, level.predict = 0.9)

# See the results
> ma$$prediction [1] TRUE > ma$$lower.predict
[1] NA
> ma\$upper.predict
[1] NA

> sessionInfo()
R version 3.6.1 (2019-07-05)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18362)

Matrix products: default

locale:

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] dplyr_0.8.3   readxl_1.3.1  metafor_2.1-0 Matrix_1.2-17 meta_4.9-5

loaded via a namespace (and not attached):
[1] Rcpp_1.0.1       lattice_0.20-38  crayon_1.3.4     assertthat_0.2.1 grid_3.6.1       cellranger_1.1.0 R6_2.4.0         nlme_3.1-140
[9] magrittr_1.5     pillar_1.4.2     rlang_0.4.0      rstudioapi_0.10  tools_3.6.1      glue_1.3.1       purrr_0.3.2      compiler_3.6.1
[17] pkgconfig_2.0.2  tidyselect_0.2.5 tibble_2.1.3


The use of prediction intervals in random effects meta-analysis was popularised by Riley, R D and Higgins, J P T and Deeks, J J in an article entitled "Interpretation of random effects meta--analyses" available here where they state among other things that it can only be calculated when there are at least three studies (page 996). Just for the record it only differs from the confidence interval for the summary if $$\tau^2 > 0$$. This is because the interval is from
$$\hat\mu - t_{k-2}\sqrt{\hat\tau^2 + s_{\hat\mu}^2}$$
$$\hat\mu + t_{k-2}\sqrt{\hat\tau^2 + s_{\hat\mu}^2}$$
where $$\hat\mu$$ is the estimate of the average parameter value, $$s$$ is its standard error, $$\tau^2$$ is the estimate of between study standard deviation, $$k$$ the number of studies. Since $$t$$ does not exist for zero df it is clear that $$k$$ must exceed two.