(Во что я верю) очень простой вопрос. Я только что провел корреляционный тест Пирсона в R и хотел бы знать точное значение p. Тем не менее, значение p настолько маленькое, что R (или tdist в Excel, или любой другой онлайн-программе для расчета) говорит мне, что значение p равно ‹2,2e-16 или 0. Я подозреваю, что это как-то связано с большим количество наблюдений у меня есть (n = 11001).
Вот результат, который я получаю при выполнении попарной корреляции
cor.test(метс$s_M48153,метс$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» также дает мне p-значение, равное 0.
Из-за этого я хотел бы вручную рассчитать точное значение p, используя t-статистику и степени свободы, но нигде не могу найти формулу. Кто-нибудь знает формулу или может сказать мне, как извлечь точные p-значения из R (если возможно)?
cor.test(mets$s_M48153,mets$s_M48152)[["p.value"]]
- person sindri_baldur   schedule 03.08.2018stats:::cor.test.default
, чтобы увидеть, какая формула используется - person user20650   schedule 03.08.2018... > 0
. Если этоTRUE
, то 0, который вы видите, — это просто представление R, основанное на нескольких параметрах отображения (например,digits
,scipen
). - person r2evans   schedule 03.08.2018.Machine$double.eps
, вы, вероятно, также получите значение, близкое к 2.2e-16. Есть ли причина, по которой вы хотите указать значение p меньше, чем e-16? - person NewUser   schedule 03.08.2018n
размерах выборки я предполагают, что p-значения 16 цифр справа от нуля должно быть достаточно. Чтобы добиться большего, вам, вероятно, понадобитсяbit64
. упаковать и рассчитать вещи вручную. - person r2evans   schedule 03.08.2018