Ha


18

Mi sono confuso cercando di capire se un valore r -squared ha anche un valore p .

A quanto mi risulta, in correlazione lineare con un insieme di punti di dati r può avere un valore compreso tra 1 a 1 e questo valore, qualunque essa sia, può avere un p -value che mostra se r è significativamente diverso da 0 (cioè , se esiste una correlazione lineare tra le due variabili).

Passando alla regressione lineare, una funzione può essere montato ai dati, descritti dall'equazione Y=a+bX . a e b (intercetta e pendenza) hanno anche p -Valori visualizzare se sono significativamente diversi da 0 .

Supponendo che finora ho capito tutto correttamente, il valore p per r il valore p per b sono la stessa cosa? È quindi corretto dire che non è r -squared che ha un valore p ma piuttosto r o b che lo fa?

Risposte:


14

Oltre ai numerosi (corretti) commenti di altri utenti che sottolineano che il valore p per r2 è identico al valore p per il test globale F, si noti che è anche possibile ottenere il valore p associato a r2 " direttamente "usando il fatto che r2 sotto l'ipotesi nulla è distribuito come Beta(vn2,vd2), dovevnevdsono numeratore e denominatore gradi di libertà, rispettivamente, per gli associatiFstatistica t.

Il terzo punto elenco nella sottosezione Derivati ​​da altre distribuzioni della voce Wikipedia sulla distribuzione beta ci dice che:

Se Xχ2(α) e Yχ2(β) sono indipendenti, allora .XX+YBeta(α2,β2)

Bene, possiamo scrivere in quella Xr2Modulo X + Y.XX+Y

Sia la somma totale dei quadrati per una variabile Y , S S E sia la somma degli errori quadrati per una regressione di Y su alcune altre variabili e S S R sia la "somma dei quadrati ridotti", ovvero S S R = S S Y - S S E . Quindi r 2 = 1 - S S ESSYYSSEYSSRSSR=SSYSSE E naturalmente, essendo somme di quadrati,SSReSSEsono entrambi distribuiti comeχ2convnevdgradi di libertà, rispettivamente. Pertanto, r2Beta(vn

r2=1SSESSY=SSYSSESSY=SSRSSR+SSE
SSRSSEχ2vnvd (Certo, non ho dimostrato che i due chi-quadrati sono indipendenti. Forse un commentatore può dire qualcosa al riguardo.)
r2Beta(vn2,vd2)

Dimostrazione in R (codice di prestito da @gung):

set.seed(111)
x = runif(20)
y = 5 + rnorm(20)
cor.test(x,y)

# Pearson's product-moment correlation
# 
# data:  x and y
# t = 1.151, df = 18, p-value = 0.2648
# alternative hypothesis: true correlation is not equal to 0
# 95 percent confidence interval:
#  -0.2043606  0.6312210
# sample estimates:
#       cor 
# 0.2618393 

summary(lm(y~x))

# Call:
#   lm(formula = y ~ x)
# 
# Residuals:
#     Min      1Q  Median      3Q     Max 
# -1.6399 -0.6246  0.1968  0.5168  2.0355 
# 
# Coefficients:
#             Estimate Std. Error t value Pr(>|t|)    
# (Intercept)   4.6077     0.4534  10.163 6.96e-09 ***
# x             1.1121     0.9662   1.151    0.265    
# ---
#   Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# 
# Residual standard error: 1.061 on 18 degrees of freedom
# Multiple R-squared:  0.06856,  Adjusted R-squared:  0.01681 
# F-statistic: 1.325 on 1 and 18 DF,  p-value: 0.2648

1 - pbeta(0.06856, 1/2, 18/2)

# [1] 0.2647731

6

Spero che questa quarta (!) Risposta chiarisca ulteriormente le cose.

Nella semplice regressione lineare, esistono tre test equivalenti:

  1. test t per pendenza zero della popolazione della X covariabileX
  2. test t per correlazione zero della popolazione tra e risposta YXY
  3. F-test per R-quadrato a popolazione zero, cioè nulla della variabilità di può essere spiegato da X differente .YX

Tutti e tre i test verificano l'associazione lineare tra e Y e, fortunatamente (!), Portano tutti allo stesso risultato. Le loro statistiche di test sono equivalenti. (I test 1 e 2 si basano sulla distribuzione Student con n - 2 df che corrisponde alla distribuzione F campionaria del test 3, solo con statistica del test al quadrato).XYn2

Un rapido esempio in R:

# Input
set.seed(3)

n <- 100
X <- runif(n)
Y <- rnorm(n) + X

cor.test(~ X + Y) # For test 2 (correlation)

# Output (part)
# t = 3.1472, df = 98, p-value = 0.002184
# alternative hypothesis: true correlation is not equal to 0

# Input (for the other two tests)
fit <- lm(Y ~ X)
summary(fit)      

# Output (partial)
Coefficients:
            Estimate Std. Error t value Pr(>|t|)   
(Intercept) -0.03173    0.18214  -0.174  0.86204   
X            1.02051    0.32426   3.147  0.00218 **
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.9239 on 98 degrees of freedom
Multiple R-squared:  0.09179,   Adjusted R-squared:  0.08253 
F-statistic: 9.905 on 1 and 98 DF,  p-value: 0.002184

Come puoi vedere, i tre test producono lo stesso valore p di 0,00218. Si noti che il test 3 è quello nell'ultima riga dell'output.

Quindi il tuo test F per l'R-quadrato è molto frequente, anche se non molti statistici lo interpretano come un test per l'R-quadrato.


5

Mi sembra che tu abbia una buona comprensione per me. Potremmo ottenere un valore per r 2 , ma poiché è una funzione (non stocastica) di r , il p s sarebbe identico. pr2rp


Io non la penso così. Connettendo l'inferenza su e r 2 all'inferenza su α e β da OLS, ρ è significativo se β è diverso da zero, indipendentemente da α . Tuttavia, r 2 è significativo se α o β sono diversi da zero. Questo aiuta a visualizzare ciò che stanno valutando i rispettivi test. ρr2αβρβαr2αβ
AdamO,

1
@AdamO, non riesco a seguire l'argomento nel tuo commento. Simile al post di Michael Mayer di seguito, in R prova: set.seed(111); x = runif(20); y = 5 + rnorm(20); cor.test(x,y); summary(lm(y~x)). La p per r è .265. I p per b e per il test F globale sono identici, anche se p per a lo è 6.96e-09.
gung - Ripristina Monica

Esattamente il mio punto. è diverso da r 2 e il loro valore p NON è identico. r 2 può essere una funzione di r , ma non è nemmeno una funzione monotonica. r 2 può essere significativo quando r non lo è. Cosa misura r 2 ? È l'errore standard residuo dopo aver tracciato la linea di tendenza OLS e aver calcolato i residui. Nel tuo esempio, la varianza residua sarà inferiore alla varianza Y incondizionata ? Assolutamente. r 2rr2pr2rr2rr2Yr2è significativo quindi. È possibile calcolare le caratteristiche operative con bootstrap e anche la connessione tra ANOVA e minimi quadrati ordinari fa luce sulla questione.
AdamO,

4
Puoi anche ottenere il valore associato a r 2 "direttamente" usando il fatto che r 2 sotto l'ipotesi nulla è distribuito come B e t a ( v npr2r2, dovevnevdsono numeratore e denominatore gradi di libertà, rispettivamente, per gli associatiFstatistica t. (Vedi la terza identità qui:en.wikipedia.org/wiki/….) Quindi, usando i dati di esempio di @ gung, seentriamootteniamo. Beta(vn2,vd2)vnvdFR1 - pbeta(0.06856, 1/2, 18/2)0.2647731
Jake Westfall,

4
@AdamO, ancora non capisco. Sono entrambi .265, come non sono identici?
gung - Ripristina Monica

4

Esistono diversi modi per derivare la statistica test per i test della correlazione di Pearson, . Per ottenere un valore p , vale la pena sottolineare che è necessario sia un test che una distribuzione campionaria di una statistica test sotto l'ipotesi nulla. Il titolo e la domanda sembrano avere una certa confusione tra la correlazione di Pearson e la "varianza spiegata" r 2 . Prenderò in considerazione prima il coefficiente di correlazione.ρpr2

Non esiste un modo "migliore" per testare la correlazione di Pearson di cui sono a conoscenza. La trasformazione Z di Fisher è in questo modo, basata su trasformazioni iperboliche, in modo che l'inferenza sia un po 'più efficiente. Questo è certamente un approccio "buono", ma la cosa triste è che l'inferenza per questo parametro è coerente con l'inferenza sul parametro di pendenza per associazione: raccontano la stessa storia a lungo termine.β

Il motivo per cui gli statistici sono (classicamente) interamente preferito prove di è perché facciamo abbiamo una prova "best": regressione lineare, che è lo stimatore BLU. Ai giorni delle statistiche moderne, non ci interessa davvero se un test è "il migliore", ma la regressione lineare ha molte altre fantastiche proprietà che giustificano il suo uso continuo per determinare l'associazione tra due variabili. In generale, la tua intuizione è giusta: sono essenzialmente la stessa cosa e focalizziamo la nostra attenzione su β come misura più pratica di associazione.ββ

L' è funzione sia della pendenza e l'intercetta. Se uno di questi valori è diverso da zero, l' r 2 dovrebbe avere una distribuzione di campionamento riconoscibile rispetto a quella che ci si aspetterebbe se i parametri lineari fossero zero. Tuttavia, derivando distribuzioni di r 2 sotto il valore nullo e confrontandole con r 2r2r2r2r2sotto alcune ipotesi alternative non mi dà molta fiducia che questo test abbia molto potere di rilevare ciò che vogliamo. Solo un istinto. Sempre rivolgendosi agli stimatori "migliori", OLS ci fornisce stime "migliori" sia della pendenza che dell'intercettazione, quindi abbiamo la certezza che il nostro test è almeno buono per determinare la stessa (se presente) associazione testando direttamente i parametri del modello . Per me, testare congiuntamente e β con OLS è superiore a qualsiasi test su r 2, tranne in un raro caso di (forse) un'applicazione di calibrazione della modellazione predittiva non annidata ... ma BIC sarebbe probabilmente una misura migliore in quello scenario Comunque.αβr2


1
"La è una funzione sia della pendenza che dell'intercettazione." Forse mi manca qualcosa ma ... non è solo una funzione della pendenza? Forse potresti fornire una dimostrazione concreta? r2
Jake Westfall,

Sicuro. Ricordiamo che se i dati osservati corrispondono perfettamente alla linea di tendenza, allora esattamente. Considera i dati di "risposta piatta" senza variabilità ma con intercettazione diversa da zero, quindi tutte le tuple assumono la forma ( x i , β 0 ) per tutti i { 1 , 2 , ... n } . r 2 = 1 come indicato. Il coefficiente di determinazione funge da sommario ragionevole dell'abilità predittiva di un'equazione lineare e ottenere tali previsioni richiede sia una pendenza che un'intercetta. r2=1(xi,β0)i{1,2,n}r2=1
AdamO,

1

prr2rr2p

pb makes a lot of sense - that's what tells you whether the model has a linear relationship or not. If b is statistically significantly different from 0 then you conclude that there is a linear relationship between the variables. The r or r2 then tells you how well the model explains the variation in the data. If r2 is low, then your independent variable isn't helping to explain very much about the dependent variable.

A p-value for a tells us if the intercept is statistically significantly different from 0 or not. This is of varying usefulness, depending on the data. My favorite example: if you do a linear regression between gestation time and birth weight you might find an intercept of, say, 8 ounces that is statistically different from 0. However, since the intercept represents a gestation age of 0 weeks, it doesn't really mean anything.

If anyone does regularly calculate p-values for an r2 I'd be interested in hearing about them.


4
Take a closer look at the output of your favorite regression command: it should report an F statistic and a p-value for it. That is also the p-value for the R2, because F and R2 are directly and monotonically related. For ordinary regression with n data, F=(n2)R2/(1R2). Its p-value will be the p-value for the slope. Therefore if you have ever used a p-value for b in ordinary regression, you have used a p-value for R2.
whuber

In practice it seems like people do not think in terms of the significance of r or r^2. What might be more useful is a confidence interval around them.
N Brouwer
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.