Rolling () to jedna z wielu pomocnych funkcji oferowanych przez pandas narzędzi, który jest niezwykła pod względem zdolności do wykonywania skomplikowanych obliczeń na zestawach danych. Aby zastosować określoną funkcję do okna toczenia do całych danych, mamy metodę „Rolling ().stosować()".
Można to wykorzystać w ramach danych, a także do serii. Aby wywołać tę funkcję, musimy postępować zgodnie z tą składnią:
W tym artykule przeprowadzi praktyczne wykonanie tej funkcji z dwiema technikami w programach Python.
Przykład nr 1: Wykorzystanie pandy Rolling ().Apply () Funkcja do obliczenia mediany pandasframe
Do tej ilustracji będziemy zatrudnić pand „DF.walcowanie().Apply () ”Metoda zastosowania metody do całej ramki danych za pomocą okna toczenia. Przejdziemy bezpośrednio do wdrożenia tej koncepcji.
Kompilacja programu Python odbywa się na narzędzia kompatybilnym z naszym systemem. Zapewnia najlepsze środowisko obsługiwane przez Python, więc nie utkniemy w procesie wykonania. Ten, który wybraliśmy, to narzędzie „Spyder”. Użyjemy tego narzędzia do złożenia naszych przykładowych programów w tym samouczku. Właśnie uruchomiliśmy narzędzie do pracy, a to zabierze Cię prosto do środowiska pracy. Zaczęlibyśmy pisać na nim skrypt.
Teraz podstawowe wymagania są ładowane do tego pliku. Zatem zaimportowaliśmy dwa wymagane moduły Pythona. Są to „Pandy” i „Numpy”. Biblioteka Panda jest importowana, ponieważ utworzymy ramkę danych za pomocą tej biblioteki i „Rolling ().Apply () ”Funkcja należy do tego samego zestawu narzędzi. Druga biblioteka, Numpy, jest załadowana do metody; z niego zostanie użyte do obliczenia wyrażenia matematycznego. Tak więc obie te biblioteki zostały wprowadzone do programu. Dodatkowo ustawiono dla nich skróty, takie jak „PD” i „NP”.
Korzystając z funkcji z Biblioteki Panda, musimy skonstruować pankazę danych pandas. Metoda tworzenia ramek danych jest „PD.Ramka danych()". Kiedy ćwiczymy tę funkcję, instruuje program Python, aby rozpocząć proces generowania ramek danych. W ten sposób wywołaliśmy „PD.Metoda dataFrame () ”i podane określone wartości dla każdej kolumny, która musiała być w niej dołączona. Chcemy, aby tenframe danych miał cztery kolumny; Dlatego nazwaliśmy je „Wschodem”, „West”, „Północ” i „Południe”.
Typ danych dla wszystkich kolumn jest przechowywany taki sam, jakim jest liczba całkowita Dtype, a rozmiar kolumn wynosi 8. Wartości zidentyfikowane dla kolumny „Wschodniej” to „1, 2, 3, 4, 5, 6, 7 i 8”. „Zachód” zawiera wartości „0, 1, 2, 3, 4, 5, 6 i 7”. Dane przechowywane w kolumnie „północnej” to „9, 8, 7, 6, 5, 4, 3 i 2”. A ostatnia kolumna „South” ma wartości „3, 5, 7, 9, 6, 4, 2 i 8”. Obiekt DataFrame, „Wskazówki”, jest zbudowany w celu utrzymania tej strumienia danych, aby można go było udostępnić później.
Musimy umieścić tę ramkę danych na widoku. Można to zrobić za pomocą funkcji Python „print ()”. Ta metoda przyjmuje dowolny rodzaj danych wejściowych, czy to ciąg, funkcji, obiektu, zmiennej, czy niektórych wyrażeń, i po prostu umieszcza wynik na ekranie. Dlatego dostarczyliśmy obiekt „Direction” DataFrame, aby go wydrukować.
Jest to wynikowy strumień danych, który skonstruowaliśmy, wykonując poprzedni fragment kodu.
Teraz oblicz „Rolling ().Apply () ”W tej ramce danych zdefiniowaliśmy funkcję. „Def” jest słowem kluczowym, które definiuje funkcję. Funkcja, którą utworzyliśmy, to „ApplyRolling ():”. W ramach tej metody definiuje się inną funkcję, która jest „median_estimation (i):”. Być może zauważyłeś, że napisaliśmy: „ja” między aparatami ortodontycznych tej funkcji. Ten „i” jest używany do iteracji, ponieważ funkcja „median_estimation ()” będzie działać iteracyjnie przy każdej wartości w ramce danych. Teraz, co będzie działać z każdą iteracją? W poniższym wierszu określiliśmy go, aby zwrócić nam wyjście „NP.Funkcja mediany (i) ”.
Jak nazwa identyfikuje, to funkcja Numpy obliczy medianę iteracyjnie dla wszystkich wartości. Każda wartość zostanie zastąpiona przez „i”; mediana zostanie oszacowana dla tej konkretnej wartości i zwróci wynik. Następnie wywołaj „DF.walcowanie().Metoda Apply () ”. Nazwa ramki danych jest wymieniona jako „kierunki”, funkcja „Rolling ()” jest ustawiona tak, aby znaleźć okno toczące trzy obserwacje, a funkcja „Apply ()” jest wykonywana z funkcją „Median_estimation”. Wyjście będzie przechowywane w zmiennym „wyniku”. A następnie zwróciliśmy ten zmienny „wynik” do głównej funkcji.
Tak więc cały ten proces można podsumować, gdy rozpoczyna się funkcja „ApplyRolling ()” i zaprasza funkcję „Median_estimation ()” w celu obliczenia mediany iteracyjnej. Następnie dostaje się w ramce danych, oblicza okno toczące się, stosuje metodę mediany do wygenerowania danych wyjściowych i wychodzi z głównej funkcji. I „print ()” będzie wykazywać wynik z funkcji „ApplyRolling ()”.
Tutaj widzimy, że pierwsze trzy wpisy mają wartości NAN, ponieważ określono, aby oszacować okno toczące trzy obserwacje, ponieważ nie mają już więcej wpisów, aby ukończyć okno, więc pozostawione są puste. Od czwartego wpisu mediana została obliczona dla okna toczenia. Zwracany danych z tego danych jest float.
Przykład nr 2: Wykorzystanie pand toczy.Apply () Funkcja do obliczenia suma serii pandy
Drugą techniką stosowania tej metody jest ćwiczenie jej w serii Pandy.
Najpierw zaimportowaliśmy bibliotekę pandy do naszego środowiska w Python i stworzyliśmy „PD” jego alias, który ma być używany w całym programie. Następnie wywołaliśmy „PD.Series () ”Funkcja z zestawu narzędzi pandy w celu utworzenia serii pandy. „PD” to skrót Pandas zdefiniowany powyżej, a „seria” jest słowem kluczowym do budowania serii. Określiliśmy szereg wartości dla tej funkcji. Wartości to „11, 12, 13, 14, 15, 3, 7, 17, 9, 1, 21, 24 i 2”. Aby zachować tę serię, mamy obiekt serii „losowych”. Ten „losowy” obiekt trzyma teraz naszą serię, więc przekazaliśmy go do metody „print ()”, aby przedstawić swoją treść na terminalu.
Po naciśnięciu opcji „Uruchom plik”, nasz kod zostanie wykonany. W poniższej migawce możesz zobaczyć aktualnie wygenerowaną serię.
Po wydrukowaniu serii zdefiniowaliśmy funkcję „Series_ra ()”. Teraz główne obliczenia zostaną wykonane w tej funkcji. W ramach tej funkcji zdefiniowaliśmy inną funkcję, jaką jest „Compute_sum (j)”. Można zgadnąć po jej etykiecie, że uzyska sumę. „J” tutaj mówi, aby wykonał tę funkcję iteracyjnie. Każda iteracja wejdzie i wykona funkcję „suma (j)”. A następnie zwróć obliczoną sumę dla każdej wartości.
Potem „Seria.walcowanie().Apply () ”Metoda jest wywoływana w funkcji„ Compute_Sum () ”. Oszacuje okno Znajdź toczące się pięć obserwacji, a następnie obliczy ich sumę za pomocą metody „Apply ()”. Wyjście zostanie zachowane w zmiennej lokalnej „wyniku” i zwrócone do głównej funkcji. Na koniec przekazaliśmy funkcję wejściową „series_ra ()” do metody „print ()”, aby zobaczyć końcową serię.
To jest ostateczna seria z obliczoną sumą na toczące się oknie pięciu obserwacji.
Wniosek
Omówiony temat tego artykułu opierał się na dwóch koncepcjach pand, które są „Rolling ()” i „Apply ()”. Opracowaliśmy wykorzystanie tej metody, podając szczegółowe wyjaśnienie praktycznego wdrożenia „Rolling ().Apply () ”funkcja. Ten samouczek zawierał dwa podejścia do zastosowania tej metody. Pierwsza instancja mówiła o zastosowaniu mediany funkcji z Numpy Toolkit w oknie toczącego się pandas Dataframe. Podczas gdy drugi przykład dał nam pomysł na wdrożenie tej koncepcji w serii pandy. Zastosowaliśmy więc tę funkcję, obliczając sumę w określonym oknie toczącego serii. Możesz ćwiczyć technikę, która jest bardziej wykonalna dla twojego zadania.