Pandy Utwórz kolumnę na podstawie warunku

Pandy Utwórz kolumnę na podstawie warunku
Python jest najczęściej używanym językiem kodowania na arenie nauki danych. Jednym z czynników jego znaczenia jest wiele bibliotek Python do analizy danych. Biblioteki te zapewniają techniki wykonywania operacji danych, które są szybkie, modułowe i wydajne. Pandy i Numpy to dwa znane moduły Pythona do analizy danych i manipulacji danych.

Generowanie nowych kolumn z istniejących kolumn w zestawie danych jest powszechną operacją na etapie wstępnego przetwarzania danych. Jest to również ważny aspekt inżynierii funkcji. W niektórych okolicznościach nowe kolumny są konstruowane w odpowiedzi na warunki na istniejących kolumnach. Pandy i Numpy zapewniają szereg opcji dla tego zadania.

W tym poście przyjrzymy się różnym podejściom do budowy nowej kolumny w zależności od warunków istniejących kolumn.

Metody tworzenia kolumny opartej na warunkach w pandy

Techniki pandy, które zamierzamy użyć w tym artykule, podano poniżej:

  • Technika rozumienia listy
  • Ramka danych.Aplikuj () funkcja
  • Ramka danych.Funkcja map ()

W tej lekcji użyjemy tych metod i wyjaśnimy, jak wdrożyć wszystkie trzy sposoby na pandy.

Przykład 01: Wykorzystanie techniki rozumienia listy

Pierwszym podejściem, którego używamy tutaj do utworzenia kolumny opartej na warunku istniejących kolumn, jest „rozumienie listy”. Dowiemy się tej metody z praktycznym przykładem. Rozpocznijmy kod.

W tym artykule używamy narzędzia „Spyder” do wdrażania i wykonywania przykładowych kodów. Otwieramy nowy plik Pythona w „Spyder”, aby zacząć pisać nasz skrypt Python. Nasz kod zaczyna się od importowania wymaganej biblioteki „Pandy jako PD” tutaj. Następnie tworzymy ramkę danych za pomocą „PD.Funkcja dataFrame () ”. Zainicjujemy tę ramkę danych z dwiema kolumnami „nazwa” i „wiek”.

Kolumna „Nazwa” przechowuje pięć nazwisk, które są „Elsa”, „Emma”, „Alaxandar”, „Ron” i „Sasha”. Podczas gdy kolumna „wiek” przechowuje tę samą długość wartości całkowitej, które wynoszą „28”, 19 ”,„ 26 ”,„ 19 ”i„ 31 ”. Następnie przechowujemy tę ramkę danych w obiekcie DataFrame, który stworzyliśmy „Informacje”. Do tego obiektu można uzyskać za pomocą obiektu „Informacje”. W ostatnim wierszu wywoływana jest metoda „print ()”, aby wyświetlić nowo utworzoną ramkę danych.

Aby wykonać powyższy kod, naciśnij przycisk „Uruchom plik” lub naciśnij klawisze „Shift+Enter”. Wyjście wyświetlane na terminalu pokazuje ramkę danych z 2 kolumnami, z których każda przechowuje 5 wartości.

Teraz wygenerujemy inną kolumnę na podstawie warunku w wcześniej utworzonej kolumnie. Tworzymy inną kolumnę „Can_Vote” w ramach danych „Info”, aby sprawdzić, kto może głosować w wyborach w tym roku. Stosujemy warunek, wykorzystując metodę zrozumienia listy, jeśli wiek osoby wynosi 18 lub więcej, aby głosować. Używamy zmiennej „a”, która jest dowolną wartością z kolumny „wiek”, ponieważ sprawdzamy warunki w oparciu o wiek osoby. Warunek staje się „prawdziwy”, jeśli wiek jest równy lub większy niż „18” inaczej warunek daje „fałszywy”; gdzie „a” jest dowolną wartością w kolumnie „wiek” w „Info” DataFrame.

Pierwsza wartość kolumny „wiek” jest przechowywana w „A”, która wynosi „28”, a warunek zostanie sprawdzony. Ponieważ „28” jest większy niż „18”, warunek daje „prawdziwe”, a pierwsza wartość kolumny „wiek” staje się „prawdziwa”. Ta operacja będzie się powtarzać, dopóki wszystkie wartości nie zostaną sprawdzone pod kątem określonego warunku. Następnie stosujemy metodę „print ()” do wyświetlania ramki danych z nową kolumną na podstawie warunku.

Kiedy uruchamiamy skrypt, wyświetla zarówno poprzednią ramkę danych z dwiema kolumnami, jak i zaktualizowaną ramkę danych z 3 kolumnami. Na poniższym obrazie wyjściowym widać, że jedyne 4th Record ma wartość mniejszą niż 18, więc w kolumnie „can_vote” jego wartość jest „fałszywa”, podczas gdy wszystkie pozostałe rekordy spełniają określony warunek, a zatem są cenione jako „prawdziwe”.

Przykład 02: Korzystanie z Pandas DataFrame.Aplikuj () funkcja

Drugą techniką, o której będziemy tutaj omówić, jest pandy „DataFrame.Apply () ”funkcja utworzenia kolumny opartej na warunkach.

Rama danych wygenerowana w poprzednim przykładzie zostanie wykorzystana do tej demonstracji. Mamy „informację”, która zawiera dwie kolumny „nazwa” i „wiek”, z których każda ma 5 rekordów. Po wydrukowaniu „Info” DataFrame Pracujemy następnie nad utworzeniem nowej kolumny w tej formie danych. Tutaj zdefiniowaliśmy funkcję „can_vote” z „wiekiem” jako jej parametrem. Pierwszy warunek „jeśli” zaczyna się, że jeśli wiek jest większy i równy 18, zwróć wartość „prawdziwej”. Jeśli warunek nie pasuje, zwróci „Fałsz”. Ta funkcja sprawdzi każdy rekord w kolumnie wiekowej i będzie pasował do określonego warunku, dopóki każdy rekord zostanie porównany. Teraz musimy utworzyć kolumnę na podstawie warunku, który jest „can_vote” i przypisać ją do wywołania „DataFrame.Apply () ”funkcja.

Zapewniamy funkcję zdefiniowaną powyżej „can_vote” jako parametru „.Metoda Apply () ”. Przyjmie wartość z kolumny „wiek” i sprawdzi ją w funkcji „can_vote” i przechowuje wynik w nowej kolumnie „can_vote”. Na koniec wykorzystujemy metodę „print ()” do wydrukowania wyniku.

Poniższy obraz wyjściowy pokazuje nowo utworzoną kolumnę w „Info”, która ma 4 wartości „prawdziwe” i jedną wartość „fałsz” na podstawie określonego warunku.

Przykład 03: Korzystanie z Pandas DataFrame.Funkcja map ()

Naszą ostatnią metodą utworzenia kolumny opartej na warunku jest użycie panda „DataFrame.Funkcja map () ”.

Najpierw zaimportowaliśmy bibliotekę „Pandy jako PD” w naszym pliku Python. Po aktywacji funkcji pandas zaczynamy pisać nasz główny kod. Tworzymy naszą ramkę danych za pomocą „PD.DataFrame () „Zainicjuj ramkę danych za pomocą dwóch kolumn„ data ”i„ zdarzenie ”. Kolumna „Data” przechowuje wartości DATETIME, które są „15/8/2022”, „16/9/2022”, „15/10/2022”, „15/11/2022” i „16/12/2022 ".

Podczas gdy kolumna „zdarzenia” przechowuje 5 wartości ciągów, które są „kreskówkami”, „gier”, „kreskówki”, „łamigłówki” i „gier”. Zapisaliśmy tę ramkę danych w obiekcie „Data” „Dane”. Wywołanie metody „print ()” z obiektem DataFrame „Data” jako parametrem wyświetli nowo utworzoną ramkę danych na terminalu.

Po naciśnięciu przycisku „Uruchom plik”, wykonuje plik Python. Wyjściowa ramka danych jest pokazana na terminalu, który ma dwie kolumny „data” i „zdarzenie”.

Teraz tworzymy inną kolumnę, stosując warunek do istniejących kolumn. Tworzymy słownik „PLIST” i ustawiamy w nim cenę każdego wydarzenia, który obejmuje „kreskówki: 1500”, „Games: 800” i „Puzzles: 1200”. Następnie dodaj nową kolumnę „Cena” w „Data” DataFrame i przypisz jej wartość mapowania rekordów kolumny „zdarzenia” za pomocą rekordów słownika „Plist”.

W tym celu stosujemy „DataFrame.Funkcja map () ”. Rama danych o nazwie kolumny „Data [„ Price ”]” jest napisana z „.Map () ”funkcja i nazwa słownika„ PLIST ”jest dostarczana między jego aparatami ortodontyczną. Tak więc ta funkcja mapuje „zdarzenie” za pomocą „PLIST”, ilekroć wartość się pasuje, spowoduje nową kolumnę „Cena”.

Obraz wyjściowy pokazuje obie strony danych. DrugaFrame DataFrame ma dodaną do niej nową kolumnę, która wkłada każdy rekord na podstawie dopasowania warunku.

Wniosek

Dzisiejsza lekcja opiera się na tworzeniu kolumny na podstawie określonych warunków. Wyjaśniliśmy wam koncepcję tworzenia nowej kolumny od istniejących. Pandy zapewniają nam różnorodne metody osiągnięcia pożądanego wyniku. W tym samouczku użyliśmy niektórych funkcji pandów „DataFrame.Apply () ”,„ DataFrame.map () ”i„ rozumienie listy ”. Każda technika jest opracowana z praktycznym przykładem kodu zaimplementowanego na Python w narzędziu „Spyder”. Naprawdę wierzymy, że w pełni skoncentrowana praktyka w uczeniu się koncepcji pandy sprawi, że będziesz jej mistrzem.