(What I believe is) a very simple question. I have just performed a Pearson's correlation test in R, and I'd like to know the exact p-value. However, the p-value is so small R (or tdist in Excel, or any other online calculate-it software) tells me the p-value is <2.2e-16 or 0. I suspect it has something to do with the large number of observations I have (n = 11001).
Here's the output I get from running a pairwise correlation
cor.test(mets$s_M48153,mets$s_M48152)
Pearson's product-moment correlation
data: mets$s_M48153 and mets$s_M48152
t = 88.401, df = 10999, p-value < 2.2e-16
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
0.6334378 0.6552908
sample estimates:
cor
0.6444959
"cor.test(mets$s_M48153,mets$s_M48152)$p.value" also gives me a p-value of 0.
Because of this, I'd like to manually calculate the exact p-value using the t-statistic and degrees of freedom, but I can't find the formula anywhere. Does anyone know the formula, or can tell me how to extract exact p-values from R (if possible)?
Thanks everyone for your suggestions and advice, and sorry for not replying sooner. I've been juggling a few things around until recently. However, I did ask a statistician within my department about this, and he agreed with what r2evans said. If the p-value is smaller than 10^-16, there's little point in reporting an 'exact' value, since the point is that there is strong evidence that the result differs from the null hypothesis.
One case when p-values might be important is when you want to rank by order of significance, but you could get around this by using z-scores to rank instead.
To address the original question, I defer to this guide, which I found long after posting this question: https://stats.stackexchange.com/questions/315311/how-to-find-p-value-using-estimate-and-standard-error.