Saturday 16 December 2017

Obliczaj ruchomą średnią dostęp sql


Mam produkcji tabeli, która zawiera następującą strukturę: Mam danych dla każdego rep od 112017 do 812017. Co chcę być w stanie zrobić, to utworzyć 12 miesięcy średniej ruchomej począwszy od 112017 dla każdego rep, w następujący sposób: gdzie każdy wiersz reprezentuje 12-miesięczna średnia ruchoma dla wymienionego przedstawiciela w ustalonym czasie. Znalazłem kilka przykładów, które były niejasno bliskie i próbowałem ich bezskutecznie. Wydaje się, że dodanie grupy przez element rep jest głównym odstępstwem od innych przykładów. Dotyczy to tak dalece jak to było: zapytanie to wydaje się generować średnią sumę lub sumę, ponieważ nie ma grupowania w skorelowanym podzapytaniu. Kiedy próbuję grupować według, pojawia się błąd, że może wrócić tylko w jednym wierszu. Zapytany 10 października o 14: 47 Obliczanie sumy wyników i średnich kroczących w programie Microsoft Access z pełną dostępnością Statystyki Microsoft Access nie oferuje wbudowanych funkcji do obliczania bieżących sum. Bieżące sumy są podsumowaniami dla określonej liczby rekordów. Na przykład 30-dniowa średnia krocząca, którą chcesz obliczyć dla każdego rekordu w oparciu o jego wartość i poprzednie 29 rekordów. Na szczęście statystyki Total Access Statistics przeprowadzają szeroki zakres obliczeń całkowitych w rekordach: Wykonaj podsumowania dla ruchomego zestawu rekordów, aby obliczyć sumy, średnie, minimalne, maksymalne, zakresy, medianę, odchylenie standardowe itd. Umieść wartość podsumowania w pole w Twoim źródle danych Przeanalizuj dane w tabelach i kwerendach Access (w tym danych połączonych) Grupowanie grup wsparcia dla wartości pól, dzięki czemu możesz wykonać wiele analiz w jednym przebiegu Sumy uruchomień zostały dodane do statystyk Total Access dla Microsoft Access 2007 i X.7 wersje dla programu Access 2003 i wcześniejszych wersji. Przegląd ogólnych podsumowań Bieżące zestawienia to obliczenia dla określonej liczby rekordów za pośrednictwem tabeli lub zapytania. Łatwo generuj wyniki, takie jak przepływy sum, średnie, minimum, maksimum, mediana itp. I umieść je w polach w źródle danych. Dostępne są następujące obliczenia: Średnia (średnia) Liczba obserwacji Suma Sum Kwadrat Minimalny maksymalny zakres Standardowe odchylenie Wariancja współczynnika wariancji Błąd standardowy Tryb trybu średniego Zliczanie Geometria Średnia harmoniczna Średnia korzeń Średnia kwadratowa skośność Kurtoza Błąd standardowy skosu Standardowy błąd Kurtozy Do pięciu pól w twojej tabeli może być aktualizowany za jednym razem. Jak obliczane są wszystkie wartości całkowite Na przykład możesz obliczyć średnią z ostatnich 10 rekordów. Ta średnia krocząca jest określana na podstawie kolejności sortowania danych, obliczania średniej dla tych 10 rekordów i umieszczania jej w polu wskazanym przez rekord 10. W przypadku rekordu 11 rekord 1 jest ignorowany, a obliczenia są wykonywane dla rekordów 2 przez 11 itd. Podobnie jak inne funkcje, możesz określić pola grup, aby każda grupa miała własne sumy uruchomione. Ta funkcja nie tworzy oddzielnej tabeli. Wyniki zostaną umieszczone w polach określonych w źródle danych. Uruchamianie selekcji pola wyboru Ekran wyboru pola dla zestawienia wyników pozwala określić pola do sortowania oraz pola do umieszczenia wyników: Pola grup umożliwiają wygenerowanie oddzielnego zestawu analiz dla każdej kombinacji unikalnych wartości w polach grup. Pola sortowania określają kolejność sortowania rekordów, aby obliczyć wartości bieżące. Podaj co najmniej jedno pole sortowania. Może to obejmować pole, na którym wykonywane są obliczenia. Pola posortowane są w porządku rosnącym. Podaj sumy maksymalnie pięciu pól do zaktualizowania. Upewnij się, że pola zawierają typy danych, które mogą zawierać dane, które chcesz umieścić w nich. Na przykład, powinny one być podwajane, jeśli oczekujesz zapisania wartości takich jak średnia (średnia), wariancja, itp. Ukończenie wszystkich opcji Po wybraniu pól, zostaną wyświetlone opcje Bieżące sumy: Pole do analizy Określ pole, na którym oparte są obliczenia. To pole może być polem, które zostało określone jako pole sortowania. Na przykład możesz obliczyć średnią bieżącą na podstawie sprzedaży posortowanej w porządku rosnącym. Liczba rekordów do obliczenia całkowitej sumy Określa liczbę rekordów w sumie ruchomej. Jeśli podasz 0, sumy są obliczane dla każdego rekordu. Jeśli wpiszesz określoną liczbę, obliczenia będą oparte na tej liczbie rekordów. Pierwszy rekord jest usuwany po dodaniu następnego, a obliczenia są oparte na tym ruchomym zestawie rekordów. Początkowy zestaw rekordów Jeśli określisz liczbę rekordów do obliczania sum, możesz wybrać, co się stanie, zanim osiągniesz tę liczbę rekordów. Sumy powinny być pomijane lub obliczane na podstawie przetworzonych rekordów. Wybierz opcję Oblicz, aby wyświetlić bieżące sumy niezależnie od tego, czy osiągnięto liczbę ruchomych rekordów. Wybierz opcję Pozostaw puste, aby wyświetlać tylko bieżące liczby, gdy określona liczba rekordów zostanie osiągnięta bez obliczeń dla mniejszej liczby rekordów. Rodzaj obliczeń Dostępnych jest wiele typów obliczeń. Określ żądany dla każdego z wybranych pól aktualizacji. Łączne wyniki zestawień Łączne sumy wyników są umieszczane w określonych polach aktualizacji: Przykład sumy uruchomieniowej umieszczonych w czterech odpowiednich polach tabeli programu Microsoft Access W tym przykładzie dane posortowano według daty i identyfikatora zamówienia, a obliczenia w sekcji Sprzedaż pole. Zauważ, że wartości w polu RunningCount zwiększają się od 1 do 10. Gdy osiągnie 10, pozostaje na poziomie 10, ponieważ jest to maksymalna liczba rekordów w ruchu sumy. Pole RunningTotal pokazuje sumę sprzedaży względem rekordów w ruchomym zestawie rekordów. Ponieważ wybrano opcję obliczania wartości dla początkowego zestawu rekordów (przed osiągnięciem 10 rekordów), wyświetlane są wartości. W przeciwnym razie pierwsze 9 rekordów będzie miało wartości puste. Interaktywny kreator i programowalne interfejsy VBA Total Access Statistics pozwala interaktywnie generować obliczenia za pomocą interfejsu kreatora, aby łatwo wybrać źródło danych, pola i analizy bez programowania. Po określeniu wyborów są one automatycznie zapisywane jako scenariusz w bazie danych, dzięki czemu można je ponownie uruchomić w przyszłości, gdy dane ulegną zmianie. Dostępna jest również funkcja statystyki VBA, dzięki czemu można wygenerować te wyniki z kodu. Możesz łatwo uruchomić dowolny zapisany scenariusz, wywołując pojedynczą procedurę w bibliotece VBA Total Access Statistics. Biblioteka zawiera bezpłatną licencję runtime, dzięki czemu można ją dołączyć do bazy danych programu Access i dystrybuować ją do właścicieli nieobsługujących Total Access Statistics. Wywołaj funkcję z przycisku OnClick zdarzenia lub innego procesu, a wyniki zostaną wygenerowane dla ciebie. Możesz nawet ukryć wbudowany interfejs użytkownika, aby użytkownicy nie wiedzieli, że działa Total Access Statistics. Theyll będzie zaskoczony możliwościami analizy statystycznej Dodatkowe szczegóły obliczeń dostępne w statystykach Total Access Oto kilka dodatkowych zasobów i szczegółów na temat niektórych analiz danych, które można wykonać na danych Microsoft Access z Total Access Statistics: Obliczanie przepływów finansowych Użyj zdyskontowanej gotówki przepływy i stopy procentowe w celu wygenerowania wartości bieżącej netto (NPV), wartości bieżącej (PV), wartości przyszłej (FV), wewnętrznej stopy zwrotu (IRR), zmodyfikowanej wewnętrznej stopy zwrotu (MIRR) dla okresowych i zależnych od daty płatności i wpływów. Obliczenia percentylowe Oblicz różne typy percentyli: medianę, kwartyle, kwintyle, octile, decyle, percentyle, każdy percentyl X.5 i umieść je w tabeli lub zaktualizuj istniejące pole wartością percentyla rekordów. Sumy ruchome i średnie ruchome Podsumuj ruchomy zestaw rekordów, aby obliczyć sumy bieżące, średnie ruchome, minimum, maksimum, zakres, medianę, odchylenie standardowe itd. Normalizacja danych (Transpozycja danych) Transponuj nienormalizowane dane, abyś mógł łatwo analizować i utrzymywać to. Regresje Proste, wielokrotne i wielomianowe regresje z obliczaniem współczynników równań, ANOVA i tabelą resztową Tabele krzyżowe i Chi-Square Zaawansowane tabele z procentem wiersza, kolumny i sumami wyświetlanymi jako rekordy lub kolumny To pytanie Evergreen Joe Celko. Ignoruję, która platforma DBMS jest używana. Ale w każdym razie Joe był w stanie odpowiedzieć ponad 10 lat temu standardowym SQL. Cytat z Joe Celko SQL Puzzles and Answers: Ostatnia próba aktualizacji sugeruje, że możemy użyć predykatu do skonstruowania zapytania, które dałoby nam średnią ruchomą: Czy dodatkowa kolumna lub metoda zapytania są lepsze? Zapytanie jest technicznie lepsze, ponieważ podejście UPDATE będzie zdenormalizuj bazę danych. Jeśli jednak zapisane dane historyczne nie ulegną zmianie, a obliczanie średniej ruchomej jest kosztowne, można rozważyć zastosowanie podejścia opartego na kolumnach. Zapytanie dotyczące łamigłówek SQL: w każdym razie jednolite. Wystarczy rzucić do odpowiedniego kubełka wagi w zależności od odległości od aktualnego punktu czasowego. Na przykład limit wagi 1 dla punktów danych w ciągu 24 godzin od aktualnego punktu danych00 dla punktów danych w ciągu 48 godzin. W takim przypadku liczy się to, ile kolejnych punktów danych (np. 6:12 i 23:48) jest od siebie odległych. Przypadek użycia, o jakim myślę, byłby próbą wygładzenia histogramu wszędzie tam, gdzie punkty danych nie są wystarczająco gęste ndash msciwoj 27 maja 15 w 22:22 Nie jestem pewien, czy twój oczekiwany wynik (wynik) pokazuje klasyczną prostą ruchomą (rolling) średnią przez 3 dni. Ponieważ, na przykład, pierwsza potrójna liczba z definicji daje: ale oczekujesz 4,360 i jej mylące. Mimo to sugeruję następujące rozwiązanie, które wykorzystuje funkcję okienkową AVG. Takie podejście jest znacznie bardziej efektywne (jasne i mniej wymagające zasobów) niż SELF-JOIN wprowadzone w innych odpowiedziach (i jestem zaskoczony, że nikt nie dał lepsze rozwiązanie). Widzisz, że AVG jest opakowany w case, gdy rownum gt p. days następnie wymusza NULL w pierwszych wierszach, gdzie 3-dniowa średnia krocząca nie ma znaczenia. odpowiedziano 23 lutego 16 o 13:12 Możemy zastosować metodę brudnych lewych złączeń Joe Celkosa (cytowany powyżej przez Diego Scaravaggi), aby odpowiedzieć na pytanie, gdy zostało zadane. Generuje żądane dane wyjściowe: odpowiedź 16 stycznia 16 o 0:33 Twoja odpowiedź 2017 Stos Exchange, Inc

No comments:

Post a Comment