Korelacja ze stałą
On 9 lutego, 2021 by adminPróbuję uzyskać korelację między 2 zmiennymi, biorąc pod uwagę zestaw danych. Raz na jakiś czas w zadanym zbiorze danych, gdy jedna ze zmiennych ma stałą wartość, ponieważ odchylenie standardowe tej zmiennej wynosi zero, otrzymuję wartość NA dla korelacji. (W R). Chciałbym jawnie przypisać wartość korelacji w tych scenariuszach lub spróbować uzyskać jakąś wartość za pomocą alternatywnych środków, aby móc porównać ten punkt z innymi czasami, w których obliczam korelację. Jak mam się do tego zabrać? (1) Czy powinienem dodać trochę szumu do tej zmiennej i ponownie obliczyć korelację. Czy byłoby to sensowne?
Komentarze
- Zauważ, że stała odpowiedzi pomimo zmiennej predyktora i stałej predyktora, podczas gdy zmienna odpowiedzi to zasadniczo zupełnie różne sytuacje. Nie powinieneś ' nie chcę traktować ich w ten sam sposób, bez względu na to, że korelacja w obu przypadkach jest (raczej podawana jako) nieokreślona. (Dla kompletności dodaj obie zmienne jako stałe.
- Czy możesz rozszerzyć to, co masz na myśli, porównując je z innymi czasami, gdy obliczasz korelację?
Odpowiedź
Przypomnij sobie, że korelacja jest zdefiniowana jako
$$ \ rho_ {X, Y} = \ frac {\ sigma (X, Y)} { \ sigma_X \ sigma_Y} $$
Oznacza to, że jeśli jedna z twoich „zmiennych” jest stała, to nie jest zmienną, ma wariancję równą zero, a więc korelacja z czymkolwiek jest niezdefiniowane (ponieważ dzielisz przez zero).
Odchylenie standardowe zmiennej $ X $ plus stała $ c $ to to samo, co odchylenie standardowe $ X $
$$ \ sigma (X + c) = \ sigma (X) $$
to samo dla kowariancji
$$ \ sigma (X + c, Y) = \ sigma (X, Y) $$
więc dodanie szumu do stałej „zmiennej” spowodowałoby pomiar korelacji szumu z jakąś inną zmienną (twoja „zmienna” to $ c $ a szum to $ X $).
Z drugiej strony kowariancja zmiennej losowej ze stałą wynosi zero o
$$ \ sigma (Y, c) = 0 $$
i stała zmienna losowa jest niezależna dowolnej innej zmiennej losowej. Jeśli więc naprawdę potrzebujesz ponownie zdefiniować korelację dla takiego przypadku, najlepszym wyborem będzie 0 $. Zauważ jednak, że jak zauważył Nick Cox w komentarzu poniżej, nie rozwiązuje to żadnego z twoich problemów.
Podstawowym problemem związanym ze stałą zmienną losową jest to, że jest ona niezależna od wszystko inne i nie zmieni to niczego w Twojej analizie. Z tego powodu wiele pakietów oprogramowania zwracałoby błędy podczas korzystania ze stałych zmiennych lub automatycznie usuwało je z analizy. To właśnie robi R i takie zachowanie jest zgodne z definicją korelacji.
Komentarze
- Wbrew przyjętej tu logice " korelacja undefined " wydaje się lepszą odpowiedzią dla każdego, kto ma do czynienia z tym pytaniem. " Nie ' nie wiemy, " to nie to samo, co zerowa korelacja. Co więcej, dalsza analiza traktująca korelację jako zero z większym prawdopodobieństwem zepsuje jakąkolwiek analizę późniejszą, np. PCA w oparciu o macierz korelacji z błędnymi zerami.
- Jeśli więc kowariancja wynosi 0, to licznik wynosi 0. A jeśli jedna zmienna jest stała, to mianownik wynosi 0. A 0/0 to a bałagan. Jednak tutaj mianownik jest tylko współczynnikiem skalującym, więc może corr = 0 jest OK. Ale chociaż z pewnością masz rację, że kowariancja zmiennej ze stałą jest zdefiniowana jako 0, ' nie jest dla mnie jasne, czy to również ma sens. faktycznie. Więc NA jest najlepszy, myślę, że
- @PeterFlom Całkowicie się z tobą zgadzam.
- Oto co R ma do powiedzenia w tej sprawie: `cor (x < – rep (1, 10), y < – rnorm (10)) [1] NA Komunikat ostrzegawczy: In cor (x < – rep (1, 10), y < – rnorm (10)): odchylenie standardowe wynosi zero
Odpowiedź
Pytania o to, jak robić rzeczy w R (lub jakimkolwiek innym języku) są tutaj niezwiązane z tematem, ale masz również pytanie statystyczne, tj.
Jaka jest rozsądna wartość korelacji między dwiema zmiennymi, gdy jedna zmienna jest stała?
Sugerujesz dodanie szumu do zmiennej. Jeśli masz zamiar to zrobić, równie dobrze możesz po prostu powiedzieć, że korelacja wynosi 0.
Problem polega na tym, że naprawdę nie masz pojęcia, jaka powinna być korelacja – może to być cokolwiek od -1 do 1. Dlatego R daje NA. Nie ma więc naprawdę rozsądnej rzeczy do zrobienia poza stwierdzeniem, że „nie mamy żadnych informacji” i nieporównywaniem tego z innymi wartościami.
Dodaj komentarz