Wednesday, 8 November 2017

Matematyczna średnia matlab


Szukam trochę wskazówki dotyczące używania CONVN do obliczania ruchome średnie w jednym wymiarze na matrycy 3d. Im trochę się na flipping jądra pod maską i mam nadzieję, że ktoś może być w stanie wyjaśnić zachowanie dla mnie. Podobne stanowisko, które wciąż mnie trochę mylące, jest tutaj: codziennie udostępniamy dane dotyczące rzek i pogody dla przełomu w różnych lokalizacjach źródłowych. Tak więc matryca jest taka, dim 1 (wiersze) reprezentują każde miejsce dim 2 (kolumny) reprezentują datę dim 3 (strony) reprezentują inny typ pomiaru (wysokość rzeki, przepływ, opady itp.) Cel jest próba używania CONVN do 21-dniowej średniej ruchomej w każdym miejscu, dla każdego punktu obserwacyjnego dla każdej zmiennej. Jak rozumiem, powinienem być w stanie używać aa jądra, tak jak: próbowałem bawić się i tworzyć inne jądro, które powinny również działać (myślę) i ustawić ker2 jako: Wyniki nie są całkiem dopasowane i zastanawiam się, czy mam wymiary niewłaściwe dla jądra. Wszelkie wskazówki są mile widziane. BTW, masz symetryczne jądro, więc flipping nie powinien mieć wpływu na wyjście splot. To, co podano, to standardowe ruchomy jądro uśredniające, a więc splot powinien działać w celu znalezienia średniej ruchomej, jak można oczekiwać. ale trochę się mylę, ponieważ powiedziałeś, że powyższe nie działa ndash rayryeng 31 maja 15 na 20:17 To wszystko zależy od Ciebie :). Pytanie, które masz, jest ważnym (nie ma zamiaru przeznaczenia), który prowadzi wiele osób. Jeśli chcesz, aby to pozostało, napiszę odpowiedź, która podsumuje to, o czym mówiliśmy. Jeśli chcesz cofnąć usunięcie odpowiedzi, to w ogóle nie ma problemu. Daj mi znać, co chcesz zrobić ndash rayryeng 31 maja 15 w 20:39 Sądząc z kontekstu Twojego pytania, masz matrycę 3D i chcesz znaleźć ruchome średnie z każdego rzędu niezależnie od wszystkich plasterków 3D. Powyższy kod powinien działać (pierwszy przypadek). Jednak ważna flaga zwraca macierz, której rozmiar jest poprawny pod względem granic convolution. Zapoznaj się z pierwszym punktem wpisu, z którym się łączysz, aby uzyskać więcej informacji. W szczególności brakuje pierwszych 21 wpisów dla każdego wiersza ze względu na ważną flagę. Jądro convolution jądra nie jest w całości umieszczone wewnątrz rzędu macierzy i jej od tego momentu, w którym uzyskujesz trafne wyniki (nie ma przeznaczenia). Jeśli chcesz zobaczyć te wpisy na granicach, musisz użyć tej samej flagi, jeśli chcesz zachować tę samą macierzę wielkości co wejście lub pełna flaga (która jest domyślna), która daje rozmiar wyjściowy zaczynając od najbardziej ekstremalnych krawędzi zewnętrznych, ale pamiętaj, że średnia ruchoma zostanie wykonana z kilkoma zerami, a więc pierwsze 21 wpisów nie będzie tym, czego się spodziewasz. Jeśli jednak Im interpretuje to, o co pytasz, to ważna flaga jest tym, czego chcesz, ale pamiętaj, że brakuje 21 wpisów, aby uwzględnić przypadki krawędzi. W sumie Twój kod powinien działać, ale uważaj na sposób interpretowania wyników. BTW, masz symetryczne jądro, więc flipping nie powinien mieć wpływu na wyjście splot. To, co podano jest standardowym ruchomym jądrem, a więc wirowanie powinno działać w celu znalezienia średniej ruchomej zgodnie z oczekiwaniami. Korzystając z MATLAB, jak mogę znaleźć 3-dniową średnią ruchliwą konkretnej kolumny matrycy i dodać średnią ruchomej na tej matrycy staram się obliczyć 3-dniową średnią ruchu od dołu do góry matrycy. Mam podany mój kod: Biorąc pod uwagę następujące macierzy a i maski: próbowałem wykonania komendy conv, ale otrzymuję błąd. Oto komenda conv, którą próbowałem użyć w drugiej kolumnie macierzy a: Wyjście I pragnienie jest podane w następującej matrycy: Jeśli masz jakieś sugestie, bardzo bym to docenił. Dziękuję W kolumnie 2 matrycy a, obliczam średnią ruchu trzydniowego w następujący sposób i umieszczając wynik w kolumnie 4 matrycy a (zmieniłam nazwę matrycy jako 39desiredOutput39 tylko dla ilustracji). Średnia 3-dniowa z 17, 14, 11 wynosi 14, 3-dniowa średnia z 14, 11, 8 jest 11, 3-dniowa średnia z 11, 8, 5 jest równa 8, a średnia 3-dniowa z 8, 2 to 5. W czwartej kolumnie nie ma wartości w dolnych dwóch wierszach, ponieważ obliczanie dla 3-dniowej średniej ruchomej zaczyna się od dołu. Wyjście 39valid39 nie będzie wyświetlane do co najmniej 17, 14 i 11. Mamy nadzieję, że to ma sens ndash Aaron 12 czerwca 13 w 1:28 Ogólnie pomogłoby, gdybyś wykazał błąd. W tym przypadku robisz dwie rzeczy niewłaściwie: najpierw trzeba podzielić rozdzielczość na trzy (lub długość średniej ruchomej). Zauważ rozmiar c. Nie możesz po prostu zmieścić się w c. Typowym sposobem na uzyskanie średniej ruchomej byłoby użycie tego samego: ale to nie wygląda tak, jak chcesz. Zamiast tego zmuszony jest użyć kilku wierszy: 29 września 2017 r. Średnia ruchoma przez splot Co to jest średnia ruchoma i co jest dobre dla Jak przeprowadzić uśrednianie wykonywane przy użyciu splotów Średnia ruchoma to prosta operacja używana zwykle do tłumienia hałasu sygnał: ustawiamy wartość każdego punktu na średnią wartości w jej sąsiedztwie. Według wzoru: Tutaj x jest wejściem, a y jest sygnałem wyjściowym, podczas gdy rozmiar okna jest w, ma być nieparzysty. Powyższa formuła opisuje operację symetryczną: próbki są pobierane z obu stron rzeczywistego punktu. Poniżej jest prawdziwy przykład życia. Punkt, na którym jest okno jest rzeczywiście czerwony. Wartości poza x mają być zerami: bawić się i zobaczyć efekty średniej ruchomej, spójrz na tę interaktywną demonstrację. Jak to zrobić przez splot Jak zauważyłeś, obliczanie prostej średniej ruchomej jest podobne do splotu: w obu przypadkach okno jest przesuwane wzdłuż sygnału, a elementy w oknie są podsumowane. Więc spróbuj tego zrobić, używając splotu. Użyj następujących parametrów: pożądane wyjście to: jako pierwsze podejście, spróbujmy to, co otrzymamy przez przekonanie sygnału x przez następujące k kernel: Wyjście jest dokładnie trzy razy większe niż oczekiwano. Można również zauważyć, że wartością wyjściową są podsumowanie trzech elementów w oknie. To dlatego, że podczas splotowania okna przesuwają się wzdłuż, wszystkie elementy są pomnożone przez jeden, a następnie podsumowane: yk 1 cdot x 1 cdot x 1 cdot x Aby uzyskać pożądane wartości y. wynik zostanie podzielony przez 3: przez wzór obejmujący podział: ale czy nie byłoby to optymalne do podziału podczas splotu Oto pomysł polegający na przekształceniu równania: użyjemy więc następującego jądra: w ten sposób będziemy uzyskać pożądane wyjście: Ogólnie: jeśli chcemy zrobić średnią ruchomej przez splot o wielkości okna w. posłużymy się poniższym jądrem: prostą funkcją roboczą średniej ruchomej jest: przykładowe użycie to: Wyjście dokumentacyjne tsmovavg (tsobj, s, lag) zwraca prostą średnią ruchliwą dla tsobj dla obiektu czasowego czasu finansowego. opóźnienie wskazuje liczbę poprzednich punktów danych używanych w bieżącym punkcie danych przy obliczaniu średniej ruchomej. output tsmovavg (vector, s, lag, dim) zwraca prostą średnią ruchową dla wektora. opóźnienie wskazuje liczbę poprzednich punktów danych używanych w bieżącym punkcie danych przy obliczaniu średniej ruchomej. Wyjście tsmovavg (tsobj, e, timeperiod) zwraca ważoną średnią ruchową wyliczoną wykładniczo dla finansowego obiektu szeregowego czasowego, tsobj. Wyjściowa średnia ruchoma jest ważoną średnią ruchoma, w której timeperiod określa okres czasu. Wyższe średnie kroczące zmniejszają opóźnienie, stosując większą wagę do niedawnych cen. Na przykład dziesięcioletnia wykładnicza średnica ruchoma waży ostatnią cenę o 18.18. Procent procentowy 2 (TIMEPER 1) lub 2 (WINDOWSIZE 1). output tsmovavg (vector, e, timeperiod, dim) zwraca średnią ważoną ważoną wykładniczą dla wektora. Wyjściowa średnia ruchoma jest ważoną średnią ruchoma, w której timeperiod określa okres czasu. Wyższe średnie kroczące zmniejszają opóźnienie, stosując większą wagę do niedawnych cen. Na przykład dziesięcioletnia wykładnicza średnica ruchoma waży ostatnią cenę o 18.18. (2 (timeperiod 1)). tsmovavg (tsobj, t, numperiod) zwraca trójkątną średnią ruchomą dla finansowego obiektu szeregowego czasowego, tsobj. Trójkątna średnia ruchoma podwójnie wygładza dane. tsmovavg oblicza pierwszą prostą średnią ruchliwą z szerokością okna ceila (numperiod 1) 2. Następnie oblicza drugą prostą średnią ruchową na pierwszej średniej ruchomej o tym samym rozmiarze okna. Wyjście tsmovavg (wektor, t, numperiod, dim) zwraca trójkątną średnicę ruchu dla wektora. Trójkątna średnia ruchoma podwójnie wygładza dane. tsmovavg oblicza pierwszą prostą średnią ruchliwą z szerokością okna ceila (numperiod 1) 2. Następnie oblicza drugą prostą średnią ruchową na pierwszej średniej ruchomej o tym samym rozmiarze okna. tsmovavg (tsobj, w, wagi) zwraca ważoną średnią ruchową dla finansowego obiektu szeregowego czasowego, tsobj. poprzez dostarczanie ciężarów dla każdego elementu w ruchomym oknie. Długość wektora wagi określa rozmiar okna. Jeśli większe ceny są stosowane w przypadku niedawnych cen i mniejszych czynników dla poprzednich cen, trend ten jest bardziej dostosowany do ostatnich zmian. Wyjście tsmovavg (wektor, w, wagi, dim) zwraca ważoną średnią ruchomą dla wektora, dostarczając ciężary każdego elementu w ruchu okna. Długość wektora wagi określa rozmiar okna. Jeśli większe ceny są stosowane w przypadku niedawnych cen i mniejszych czynników dla poprzednich cen, trend ten jest bardziej dostosowany do ostatnich zmian. tsmovavg (tsobj, m, numperiod) zwraca zmodyfikowaną ruchomą średnią dla finansowego obiektu szeregowego czasowego, tsobj. Zmodyfikowana średnia ruchoma jest podobna do prostej średniej ruchomej. Rozważmy liczbę argumentów jako wartość opóźnienia prostej średniej ruchomej. Pierwsza zmodyfikowana średnia ruchoma jest obliczana jako prosta średnia ruchoma. Kolejne wartości są obliczane przez dodanie nowej ceny i odejmowanie ostatniej z otrzymanej sumy. Wyjście tsmovavg (wektor, m, numperiod, dim) zwraca zmodyfikowaną średnią ruchową dla wektora. Zmodyfikowana średnia ruchoma jest podobna do prostej średniej ruchomej. Rozważmy liczbę argumentów jako wartość opóźnienia prostej średniej ruchomej. Pierwsza zmodyfikowana średnia ruchoma jest obliczana jako prosta średnia ruchoma. Kolejne wartości są obliczane przez dodanie nowej ceny i odejmowanie ostatniej z otrzymanej sumy. dim 8212 wymiar do działania wzdłuż dodatniej liczby całkowitej z wartością 1 lub 2 wymiar do pracy wzdłuż, określonej jako dodatnia liczba całkowita o wartości 1 lub 2. dim jest opcjonalnym argumentem wejściowym, a jeśli nie jest to wejście, domyślne przyjmuje się wartość 2. Wartość domyślna dim 2 wskazuje macierz zorientowaną wiersz, gdzie każdy wiersz jest zmienną, a każda kolumna jest obserwacją. Jeśli dim 1. przyjmuje się, że wejście jest wektorem kolumny lub macierzą zorientowaną na kolumnę, gdzie każda kolumna jest zmienną, a każdy wiersz obserwacją. e 8212 Wskaźnik charakterystycznego wektora średniej ruchomej Wyznaczyć średnią ruchoma jest ważoną średnią ruchomą, gdzie czas jest okresem czasu wykładniczej średniej ruchomej. Wyższe średnie kroczące zmniejszają opóźnienie, stosując większą wagę do niedawnych cen. Na przykład 10-krotna średnia wykładnia średniej ruchomej odważa ostatnią cenę o 18.18. Sekwencja wykładnicza 2 (TIMEPER 1) lub 2 (WINDOWSIZE 1) timeperiod 8212 Długość okresu nieujemna liczba całkowita Wybierz kraj

No comments:

Post a Comment