Linia najlepszego dopasowania „zdrowego rozsądku” byłaby prawie pionową linią przechodzącą przez środek punktów (edytowaną ręcznie na czerwono). Jednak liniowa linia trendu ustalona przez Excel jest pokazaną ukośną czarną linią.
- Dlaczego Excel stworzył coś, co (dla ludzkiego oka) wydaje się błędne?
- Jak mogę stworzyć linię najlepszego dopasowania, która wygląda trochę bardziej intuicyjnie (tj. Coś w rodzaju czerwonej linii)?
Aktualizacja 1. Arkusz kalkulacyjny Excel z danymi i wykresem jest dostępny tutaj: przykładowe dane , CSV w Pastebin . Czy techniki regresji typu 1 i typu 2 są dostępne jako funkcje programu Excel?
Aktualizacja 2. Dane przedstawiają paralotnię wspinającą się w termie podczas dryfowania z wiatrem. Ostatecznym celem jest zbadanie, jak siła i kierunek wiatru zmienia się w zależności od wysokości. Jestem inżynierem, NIE matematykiem ani statystykiem, więc informacje zawarte w tych odpowiedziach dały mi znacznie więcej obszarów do badań.
źródło
Odpowiedzi:
Czy istnieje zmienna zależna?
Linia trendu w programie Excel pochodzi z regresji zmiennej zależnej „lat” na zmiennej niezależnej „lon”. To, co nazywasz „linią zdrowego rozsądku”, można uzyskać, gdy nie wyznaczysz zmiennej zależnej i traktujesz jednocześnie szerokość i długość geograficzną. To ostatnie można uzyskać przez zastosowanie PCA . W szczególności jest to jeden z wektorów własnych macierzy kowariancji tych zmiennych. Możesz myśleć o tym jak o linii minimalizującej najkrótszą odległość od danego punktu do samej linii, tzn. Rysujesz prostopadle do linii i minimalizujesz sumę tych dla każdej obserwacji.(xi,yi)
Oto jak możesz to zrobić w R:
Linia trendu uzyskana z Excela jest tak samo zdrowa, jak wektor własny z PCA, gdy zrozumiesz, że w regresji Excel zmienne nie są równe. Tutaj minimalizujesz pionową odległość od do , gdzie oś y jest szerokością geograficzną, a oś x jest długością geograficzną. y ( x i )yi y(xi)
To, czy chcesz traktować zmienne jednakowo, zależy od celu. To nie jest nieodłączna jakość danych. Musisz wybrać odpowiednie narzędzie statystyczne do analizy danych, w tym przypadku wybierz między regresją a PCA.
Odpowiedź na pytanie, które nie zostało zadane
Dlaczego więc w twoim przypadku linia trendu (regresja) w programie Excel nie wydaje się odpowiednim narzędziem dla twojego przypadku? Powodem jest to, że linia trendu jest odpowiedzią na pytanie, które nie zostało zadane. Dlatego.
Regresja Excela próbuje oszacować parametry linii . Tak więc pierwszym problemem jest to, że szerokość geograficzna nie jest nawet funkcją długości geograficznej, mówiąc ściśle (zobacz notatkę na końcu postu), i nawet nie jest to główny problem. Prawdziwy problem polega na tym, że nie jesteś nawet zainteresowany lokalizacją skrzydła, jesteś zainteresowany wiatrem.lat=a+b×lon
Wyobraź sobie, że nie było wiatru. Paralotniarz krążyłby ciągle w kółko. Jaka byłaby linia trendu? Oczywiście byłaby to płaska linia pozioma, jej nachylenie wynosiłoby zero, ale to nie znaczy, że wiatr wieje w kierunku poziomym!
Oto symulowana fabuła na wypadek silnego wiatru wzdłuż osi y, podczas gdy paralotnia tworzy idealne koła. Możesz zobaczyć, w jaki sposób regresja liniowa daje bezsensowny wynik, poziomą linię trendu. W rzeczywistości jest nawet nieco negatywny, ale nie znaczący. Kierunek wiatru jest pokazany czerwoną linią:y∼x
Kod R do symulacji:
Tak więc kierunek wiatru wyraźnie nie jest wcale zgodny z linią trendu. Są ze sobą powiązane, ale w niebanalny sposób. Stąd moje stwierdzenie, że linia trendu Excela jest odpowiedzią na pewne pytanie, ale nie na to, o które pytałeś.
Dlaczego PCA
Jak zauważyłeś, istnieją co najmniej dwa elementy ruchu paralotni: dryf z wiatrem i ruch okrężny kontrolowany przez paralotnię. Widać to wyraźnie po połączeniu kropek na wykresie:
Z jednej strony ruch okrężny jest dla Ciebie naprawdę uciążliwy: interesuje Cię wiatr. Z drugiej strony nie obserwujesz prędkości wiatru, obserwujesz jedynie skrzydło. Twoim celem jest zatem wywnioskowanie niewidzialnego wiatru z odczytów lokalizacji obserwowalnych skrzydeł. Właśnie w takiej sytuacji przydatne mogą być narzędzia takie jak analiza czynnikowa i PCA.
Celem PCA jest wyodrębnienie kilku czynników, które określają wiele wyników, poprzez analizę korelacji w wynikach. Jest skuteczny, gdy dane wyjściowe są powiązane z czynnikami liniowymi, co zdarza się w danych: dryf wiatru po prostu dodaje współrzędne ruchu kołowego, dlatego PCA tutaj działa.
Konfiguracja PCA
Ustaliliśmy więc, że PCA powinna mieć tutaj szansę, ale jak to właściwie skonfigurować? Zacznijmy od dodania trzeciej zmiennej, time. Przydzielimy czas od 1 do 123 każdej obserwacji 123, zakładając stałą częstotliwość próbkowania. Oto jak wygląda wykres 3D danych, ukazując jego spiralną strukturę:
Kolejna fabuła pokazuje wyimaginowany środek obrotu skrzydła w postaci brązowych kół. Możesz zobaczyć, jak unosi się na płaszczyźnie lat-lon wraz z wiatrem, podczas gdy wokół niego krąży skrzydło pokazane z niebieską kropką. Czas jest na osi pionowej. Połączyłem środek obrotu z odpowiednią lokalizacją paralotni pokazującej tylko dwa pierwsze okręgi.
Odpowiedni kod R:
Dryft środka obrotu skrzydła jest spowodowany głównie przez wiatr, a ścieżka i prędkość dryfu jest skorelowana z kierunkiem i prędkością wiatru, nieobserwowalnymi zmiennymi będącymi przedmiotem zainteresowania. Oto jak dryf wygląda podczas rzutowania na płaszczyznę lat-lon:
Regresja PCA
Wcześniej ustaliliśmy, że regresja liniowa nie wydaje się tutaj dobrze działać. Doszliśmy do wniosku, dlaczego: ponieważ nie odzwierciedla on leżącego u podstaw procesu, ponieważ ruch skrzydeł jest wysoce nieliniowy. Jest to połączenie ruchu kołowego i dryfu liniowego. Omówiliśmy również, że w tej sytuacji pomocna może być analiza czynnikowa. Oto zarys jednego z możliwych podejść do modelowania tych danych: regresja PCA . Ale najpierw pokażę ci dopasowaną krzywą regresji PCA :
Zostało to uzyskane w następujący sposób. Uruchom PCA na zestawie danych, który ma dodatkową kolumnę t = 1: 123, jak omówiono wcześniej. Otrzymasz trzy główne elementy. Pierwszy to po prostu t. Drugi odpowiada kolumnie lon, a trzeci do kolumny lat.
Dopasowuję dwa ostatnie główne składniki do zmiennej w postaci , gdzie są wyodrębniane z analizy spektralnej składników. Zdarza się, że mają tę samą częstotliwość, ale różne fazy, co nie jest zaskakujące, biorąc pod uwagę ruch kołowy.ω , φasin(ωt+φ) ω,φ
Otóż to. Aby uzyskać dopasowane wartości, odzyskujesz dane z dopasowanych komponentów, podłączając transpozycję macierzy obrotu PCA do przewidywanych głównych komponentów. Mój kod R powyżej pokazuje części procedury, a resztę możesz łatwo zrozumieć.
Wniosek
Ciekawie jest zobaczyć, jak potężna jest PCA i inne proste narzędzia, jeśli chodzi o zjawiska fizyczne, w których procesy leżące u ich podstaw są stabilne, a dane wejściowe przekładają się na dane wyjściowe za pomocą zależności liniowych (lub linearyzowanych). Zatem w naszym przypadku ruch kołowy jest bardzo nieliniowy, ale łatwo zlinearyzowaliśmy go za pomocą funkcji sinus / cosinus na parametrze czasu t. Moje wykresy zostały wyprodukowane z kilkoma liniami kodu R, jak widzieliście.
Model regresji powinien odzwierciedlać proces leżący u podstaw, wtedy tylko Ty możesz oczekiwać, że jego parametry są znaczące. Jeśli jest to paralotnia dryfująca na wietrze, wówczas prosty wykres rozproszenia, taki jak w pierwotnym pytaniu, ukryje strukturę czasową procesu.
Również regresja Excela była analizą przekrojową, dla której regresja liniowa działa najlepiej, podczas gdy dane są procesem szeregów czasowych, w którym obserwacje są uporządkowane w czasie. W tym przypadku należy zastosować analizę szeregów czasowych i przeprowadzono ją w regresji PCA.
Uwagi na temat funkcji
Ponieważ paralotnia tworzy koła, będzie wiele szerokości geograficznych odpowiadających jednej długości geograficznej. W matematyce funkcja odwzorowuje wartość na pojedynczą wartość . Jest to relacja wiele do jednego, co oznacza, że wielokrotność może odpowiadać , ale nie wielokrotność odpowiada pojedynczemu . Właśnie dlatego nie jest funkcją, ściśle mówiąc.x y x y y x l a t = f ( l o n )y=f(x) x y x y y x lat=f(lon)
źródło
Odpowiedź prawdopodobnie dotyczy tego, jak mentalnie oceniasz odległość do linii regresji. Regresja standardowa (typ 1) minimalizuje błąd do kwadratu, gdzie błąd jest obliczany na podstawie odległości w pionie od linii .
Regresja typu 2 może być bardziej analogiczna do oceny najlepszej linii. W nim zminimalizowany błąd kwadratu to prostopadła odległość do linii . Różnica ta ma szereg konsekwencji. Jednym z ważnych jest to, że jeśli zamienisz osie X i Y na swoim wykresie i ponownie dopasujesz linię, uzyskasz inny związek między zmiennymi dla regresji typu 1. W przypadku regresji typu 2 relacja pozostaje taka sama.
Mam wrażenie, że istnieje spora debata na temat tego, gdzie zastosować regresję typu 1 a typ 2, dlatego sugeruję uważne przeczytanie różnic przed podjęciem decyzji, którą zastosować. Regresja typu 1 jest często zalecana w przypadkach, w których jedna oś jest kontrolowana eksperymentalnie lub przynajmniej mierzona ze znacznie mniejszym błędem niż druga. Jeśli te warunki nie zostaną spełnione, regresja typu 1 spowoduje odchylenie nachylenia w kierunku 0, dlatego zaleca się regresję typu 2. Jednak przy wystarczającym hałasie w obu osiach regresja typu 2 najwyraźniej dąży do ich przesunięcia w kierunku 1. Warton i in. (2006) i Smith (2009) są dobrym źródłem do zrozumienia debaty.
Należy również zauważyć, że istnieje kilka subtelnie różnych metod, które mieszczą się w szerokiej kategorii regresji typu 2 (główna oś, zmniejszona główna oś i standardowa regresja głównych osi), i że terminologia dotycząca konkretnych metod jest niespójna.
Warton, DI, IJ Wright, DS Falster i M. Westoby. 2006. Dwuwymiarowe metody dopasowania linii dla allometrii. Biol. Rev. 81: 259–291. doi: 10.1017 / S1464793106007007
Smith, RJ 2009. W sprawie zastosowania i niewłaściwego wykorzystania zmniejszonej głównej osi do dopasowania linii. Jestem. J. Phys. Antropol. 140: 476–486. doi: 10.1002 / ajpa.21090
EDYCJA :
@amoeba wskazuje, że to, co nazywam powyższą regresją typu 2, jest również znane jako regresja ortogonalna; może to być bardziej odpowiedni termin. Jak powiedziałem powyżej, terminologia w tym obszarze jest niespójna, co wymaga dodatkowej uwagi.
źródło
Pytanie, na które Excel próbuje odpowiedzieć, brzmi: „Zakładając, że y zależy od x, która linia przewiduje y najlepiej”. Odpowiedź jest taka, że z powodu ogromnych różnic w y żadna linia nie mogłaby być szczególnie dobra, a to, co wyświetla Excel, jest najlepsze, co możesz zrobić.
Jeśli weźmiesz proponowaną czerwoną linię i kontynuujesz ją do x = -0,714 i x = -0,712, przekonasz się, że jej wartości są bardzo oddalone od wykresu i znajduje się w dużej odległości od odpowiednich wartości y .
Pytanie, na które Excel nie odpowiada, „która linia jest najbliższa punktom danych”, ale „która linia najlepiej przewidzieć wartości y na podstawie wartości x” i robi to poprawnie.
źródło
Nie chcę dodawać niczego do innych odpowiedzi, ale chcę powiedzieć, że zostałeś wprowadzony w błąd przez złą terminologię, w szczególności termin „linia najlepszego dopasowania”, który jest używany w niektórych kursach statystycznych.
Intuicyjnie „linia najlepszego dopasowania” wyglądałaby jak Twoja czerwona linia. Ale linia stworzona przez Excela nie jest „linią najlepszego dopasowania”; to nawet nie próbuje być. Jest to wiersz, który odpowiada na pytanie: biorąc pod uwagę wartość x, jaka jest moja najlepsza możliwa prognoza dla y? lub alternatywnie, jaka jest średnia wartość y dla każdej wartości x?
Zwróć uwagę na asymetrię między xiy; użycie nazwy „linia najlepszego dopasowania” przesłania to. Podobnie Excel używa „linii trendu”.
Jest to bardzo dobrze wyjaśnione pod następującym linkiem:
https://www.stat.berkeley.edu/~stark/SticiGui/Text/regression.htm
Możesz chcieć czegoś bardziej podobnego do tego, co nazywa się „Typ 2” w powyższej odpowiedzi lub „Linia SD” na stronie kursu statystyki Berkeley.
źródło
Część problemu optycznego pochodzi z różnych skal - jeśli użyjesz tej samej skali na obu osiach, będzie wyglądać już inaczej.
Innymi słowy, możesz sprawić, że większość takich „najlepiej dopasowanych” linii będzie wyglądać „nieintuicyjnie”, rozkładając jedną skalę osi.
źródło
Kilka osób zauważyło, że problem jest wizualny - zastosowane skalowanie graficzne wytwarza mylące informacje. Mówiąc dokładniej, skalowanie „lon” jest takie, że wydaje się być ciasną spiralą, co sugeruje, że linia regresji zapewnia słabe dopasowanie (ocena, z którą się zgadzam, rysowana przez ciebie czerwona linia zapewniłaby błędy o niższej kwadratowej wartości, gdyby dane zostały ukształtowane w sposób przedstawiony).
Poniżej przedstawiam wykres rozrzutu utworzony w programie Excel ze zmienionym skalowaniem dla „lon”, aby nie tworzyło ciasnej spirali w twoim wykresie rozrzutu. Dzięki tej zmianie linia regresji zapewnia teraz lepsze dopasowanie wizualne i myślę, że pomaga wykazać, w jaki sposób skalowanie w oryginalnym wykresie rozrzutu zapewniło mylącą ocenę dopasowania.
Myślę, że regresja działa tutaj dobrze. Nie sądzę, że potrzebna jest bardziej złożona analiza.
Dla wszystkich zainteresowanych narysowałem dane za pomocą narzędzia do mapowania i pokazałem regresję dopasowaną do danych. Czerwone kropki to zarejestrowane dane, a zielona to linia regresji.
A oto te same dane na wykresie punktowym z linią regresji; tutaj lat jest traktowane jako zależne, a wyniki lat są odwracane w celu dopasowania do profilu geograficznego.
źródło
Twoja myląca regresja zwykłej najmniejszej liczby kwadratów (OLS) (która minimalizuje sumę kwadratowego odchylenia względem przewidywanych wartości, (obserwowana-przewidywana) ^ 2) i regresja osi głównej (która minimalizuje sumy kwadratów odległości prostopadłej między każdym punktem i linia regresji, czasami nazywana jest regresją typu II, regresją ortogonalną lub standardową regresją składowych głównych).
Jeśli chcesz porównać dwa podejścia właśnie w R, po prostu sprawdź
To, co uważasz za najbardziej intuicyjne (czerwona linia), to tylko regresja głównej osi, która wizualnie jest rzeczywiście najbardziej logiczna, ponieważ minimalizuje prostopadłą odległość do twoich punktów. Regresja OLS pojawi się, aby zminimalizować prostopadłą odległość do punktów tylko wtedy, gdy zmienna xiy ma tę samą skalę pomiaru i / lub ma taką samą ilość błędów (możesz to zobaczyć po prostu na podstawie twierdzenia Pitagorasa). W twoim przypadku twoja zmienna y ma o wiele większy zasięg, stąd różnica ...
źródło
Odpowiedź PCA jest najlepsza, ponieważ myślę, że powinieneś to zrobić, biorąc pod uwagę opis problemu, jednak odpowiedź PCA może mylić PCA i regresję, które są zupełnie innymi rzeczami. Jeśli chcesz ekstrapolować ten konkretny zestaw danych, musisz wykonać regresję i prawdopodobnie chcesz wykonać regresję Deminga (co, jak sądzę, czasami przebiega według typu II, nigdy nie słyszałem o tym opisie). Jeśli jednak chcesz dowiedzieć się, które kierunki są najważniejsze (wektory własne) i mieć miarę ich względnego wpływu na zbiór danych (wartości własne), PCA jest właściwym podejściem.
źródło