... związek jest nieliniowy, ale istnieje wyraźny związek między xiy, jak mogę przetestować powiązanie i oznaczyć jego naturę?
Jednym sposobem osiągnięcia tego byłoby dopasować jako częściowo parametrycznie przybliżony funkcji z wykorzystaniem, na przykład, uogólnione dodatków modelu i testowania, czy nie, że oszacowanie funkcjonalna jest stała, które nie wskazują na stosunek między i . Takie podejście uwalnia cię od konieczności wykonywania regresji wielomianowej i podejmowania czasami arbitralnych decyzji dotyczących kolejności wielomianu itp.x y xyxyx
W szczególności, jeśli masz obserwacje , możesz dopasować model:(Yi,Xi)
E(Yi|Xi)=α+f(Xi)+εi
i przetestuj hipotezę . Za pomocą tej funkcji można to zrobić . Jeśli Twój wynik jest predyktorem, możesz wpisać:H0:f(x)=0, ∀xR
gam()
y
x
library(mgcv)
g <- gam(y ~ s(x))
Wpisanie summary(g)
daje wynik testu hipotezy powyżej. Jeśli chodzi o charakter relacji, najlepiej byłoby to zrobić za pomocą fabuły. Jednym ze sposobów na to R
(przy założeniu, że powyższy kod został już wprowadzony)
plot(g,scheme=2)
Jeśli twoja zmienna odpowiedzi jest dyskretna (np. Binarna), możesz to uwzględnić w tym frameworku, dopasowując logistyczną GAM (w R
, dodajesz family=binomial
do swojego wywołania gam
). Ponadto, jeśli masz wiele predyktorów, możesz dołączyć wiele dodatków (lub zwykłe terminy liniowe) lub dopasować funkcje wielu zmiennych, np. jeśli masz predyktory . Złożoność relacji jest automatycznie wybierana przez krzyżową weryfikację, jeśli korzystasz z metod domyślnych, chociaż jest tutaj duża elastyczność - w razie zainteresowania przejrzyj plik pomocy .f(x,z)x, z
gam
Gdyby nieliniowy związek był monotoniczny, odpowiednia byłaby korelacja rang (rho Spearmana). W twoim przykładzie jest wyraźny mały region, w którym krzywa zmienia się z monotonicznie rosnącego na montonicznie malejącego, jak zrobiłaby to parabola w punkcie, w którym pierwsza pochodna wynosi .0
Myślę, że jeśli masz trochę wiedzy na temat modelowania (poza informacjami empirycznymi), gdzie występuje ten punkt zmiany (powiedzmy przy ), to możesz scharakteryzować korelację jako dodatnią i użyć rho Spearmana na zbiorze par gdzie aby podać oszacowanie tej korelacji i użyć innego oszacowania korelacji Spearmana dla gdzie korelacja jest ujemna. Te dwa szacunki następnie scharakteryzować strukturę korelacji między i oraz w przeciwieństwie do oszacowania korelacji, który byłby blisko , gdy oszacowana przy użyciu wszystkich danych szacunki te będą zarówno duże i przeciwny znak.( x , y ) x < x > x y 0x=a (x,y) x<a x>a x y 0
Niektórzy mogą argumentować, że tylko informacje empiryczne ( tj . Obserwowane pary wystarczają, aby to uzasadnić.(x,y)
źródło
Możesz przetestować dowolną zależność za pomocą testów korelacji odległości. Więcej informacji na temat korelacji odległości znajduje się tutaj: Zrozumienie obliczeń korelacji odległości
I tutaj oryginalny artykuł: https://arxiv.org/pdf/0803.4101.pdf
W R jest to zaimplementowane w
energy
pakiecie zdcor.test
funkcją.źródło
Ktoś mnie poprawi, jeśli moje rozumienie jest tutaj błędne, ale jednym ze sposobów radzenia sobie ze zmiennymi nieliniowymi jest zastosowanie aproksymacji liniowej. Na przykład zapisanie rozkładu wykładniczego powinno pozwolić traktować zmienną jako rozkład normalny. Można go następnie wykorzystać do rozwiązania problemu, jak w przypadku dowolnej regresji liniowej.
źródło
Kiedyś wdrażałem ogólny model addytywny do wykrywania nieliniowej zależności między dwiema zmiennymi, ale ostatnio dowiedziałem się o korelacji nieliniowej zaimplementowanej za pomocą
nlcor
pakietu w języku R, możesz zaimplementować tę metodę w taki sam sposób, jak korelacja Pearsona , współczynnik korelacji wynosi od 0 do 1, a nie od -1 do 1, jak w korelacji Pearsona. Wyższy współczynnik korelacji implikuje istnienie silnej zależności nieliniowej. Załóżmy dwa szeregi czasowex2
iy2
korelacja nieliniowa między tymi dwoma szeregami czasowymi jest testowana w następujący sposóbDwie zmienne wydają się być silnie skorelowane poprzez relację nieliniową, można również uzyskać skorygowaną wartość p dla współczynnika korelacji
Możesz także wykreślić wyniki
Możesz wyświetlić ten link, aby uzyskać więcej informacji
źródło