Jak korzystać z metody get_dummy () w pandy
Korzystając z serii pandy, kolumny lub wielu kolumn Pandas DataFrame, PD.Funkcja get_dummy () może generować zmienne fikcyjne. Niektóre narzędzia w nauce danych można użyć wyłącznie z liczbą danych wejściowych. Liczne techniki uczenia maszynowego, takie jak regresja logistyczna i liniowa, akceptuj tylko liczbowe dane wejściowe. Podają błąd, jeśli spróbujesz użyć danych kategorii opartych na strunach. Oznacza to, że przed użyciem takich narzędzi musisz zakodować dane kategorii jako zmienne fikcyjne (numeryczne). Spójrzmy na PD.Składnia Get_Dummy, aby zrozumieć, jak funkcjonuje.
Składnia: pandy.get_dummies (dane, prefiks = brak, prefix_sep = '_', manekin_na = false, kolumny = brak, rzadkie = false, drop_first = false, dtype = brak)Gdzie;
dane: Których dane są zmieniane lub manipulowane.
prefiks: String, aby dołączyć nazwy kolumnów DataFrame. Podczas korzystania z manekinów w ramce danych, przełóż listę o rozmiarze równoważnym całkowitej liczbie kolumn DataFrame. „Brak” jest wartością domyślną.
Prefix_Sep: Użyj separatora lub ogranicznika podczas dołączania prefiks. To jest „domyślnie.
manekin_na: Dodano nową kolumnę, aby wskazać wartości NAN. Domyślnie jest to fałsz, jeśli fałszywe brakujące wartości są ignorowane.
kolumny: Nazwy kolumn DataFrame, które należy zakodować. Kolumny posiadające kategorię lub typ danych obiektowych są konwertowane na „Brak”. Wartość domyślna to „Brak”.
rzadki: Określa, czy Spresearray (True) lub standardowa tablica Numpy powinna cofnąć kolumny kodowane manekinem (fałsz). Fałsz jest wartością domyślną.
Drop_first: Z poziomów kategorycznych K Aby uzyskać manekiny K-1, usuń pierwszy poziom.
Dtype: Typ danych nowych kolumn. Może być tylko jeden typ danych. „NP.uint8 ”, jest wartością domyślną.
Teraz użyjmy funkcji get_dummy () w następujących przykładach:
Przykład 1: Korzystanie z funkcji get_dumies () w serii pandy
Zacznijmy od użycia funkcji get_dummies () w serii pandas. Tworzymy serię za pomocą PD.Funkcja serii ().
Po zaimportowaniu biblioteki pandy tworzymy listę „nazw” z elementami „Mark”, „Kane”, „Larry”, „Mark”, None, „Larry”, „Kane”, None i „Mark”. Aby utworzyć serię, lista jest następnie przekazywana do PD.Funkcja serii (). Funkcja print () służy do zilustrowania serii „S”. Istnieją 3 kategorie danych lub wartości ciągu w serii (Mark, Kane i Larry). Seria zawiera również niektóre brakujące wartości. Teraz używana jest funkcja manekinów pandy.
PD.get_dummies () tworzy ramkę danych z czterema nowymi zmiennymi jako wyjście: „Kane”, „Larry” i „Mark”. Nowa zmienna Kane ma wartość 1, w której oryginalna wartość serii była „Kane”, podczas gdy wartości drugiej zmiennej to „0.„W przypadku„ wartości oryginalnej serii „Larry”, nowa zmienna Larry'ego ma teraz wartość „1”, podczas gdy wszystkie wartości innych zmiennych są „0” i tak dalej. Pojedyncza zmienna, która zawiera trzy wartości, jest przekodowana na trzy zmienne zawierające 0 lub 1 wartości za pomocą metody get_dumies (). Chociaż jest on przedstawiony inaczej (w postaci wartości 0 i 1), nowa struktura zawiera te same informacje/dane.
Przykład 2: Korzystanie z funkcji get_dummies () w PandaS DataFrame
Następnie stosujemy PD.funkcja get_dummy () do kolumny DataFrame. Utwórzmy najpierw Pandas DataFrame za pomocą PD.Funkcja dataFrame () po zaimportowaniu modułów pandy i numpy tak samo jak w pierwszym przykładzie.
Trzy kolumny w dostarczonej ramce danych zawierają nazwy „EMP”, „Wynagrodzenie” i „Kraj.„W kolumnie„ EMP ”przechowujemy nazwiska pracowników („ Jay ”,„ Anna ”,„ Sam ”,„ Eddy ”,„ Jhon ”,„ Maria ”,„ Sara ”,„ Kim ”,„ Jack ” , „Will”, „Jerry”). W wynagrodzeniu w kolumnie pensje pracowników są przechowywane jako wartości liczbowe (40000, 53000, 44000, 39000, 47000, 34000, 55000, 51000, 42000, 39000, 38000). Kolumna „krajowa” zawiera nazwiska krajów, z których należy każdy pracownik („USA”, „Francja”, „USA”, „USA”, „Rosja”, „Rosja”, „Rosja”, „Francja”, „ Francja ”,„ USA ”, NP.nan). Możemy przekonwertować kolumnę krajową, która jest kategoryczną kolumną, na zmienną manekina 0 lub 1. Stosujemy funkcję Pandas get_dummies () do kolumny krajowej w DF DataFrame.
Przede wszystkim można zauważyć, że w wyniku operacji tworzona jest nowa ramka danych. Kolumna poprzedniej krajowej nie istnieje już w tym nowym ramie danych. Na jego miejscu są teraz 4 nowe kolumny: country_france, country_russia i country_usa. Nazwa starej zmiennej (kraj) jest przedrostkowana do nazwy nowych zmiennych według funkcji get_dumies (). Nowa kolumna country_france ma wartość 1, w której wartość kolumny była „Francja” w oryginalnej kolumnie i 0 dla innych zmiennych. Nowa kolumna Country_russia ma wartość 1, podczas gdy ma wartość 0 dla innych zmiennych, w których wartość kolumny była „Rosja” w oryginalnej kolumnie. Nowa kolumna country_usa ma wartość 1, w której wartość oryginalnej kolumny była „USA”, a inne zmienne mają wartości 0. Pandas get_dummies () wyprodukował teraz nową zmienną 0/1 dla każdego poziomu poprzedniej kolumny klasyfikowanej, „kraj."
Przykład 3: Korzystanie z funkcji get_dumies () i jej parametru Drop_first w kolumnie
Używamy teraz metody get_dumies () w kategorycznej kolumnie DataFrame, ale pierwszy poziom kolumny kategorycznej jest upuszczony. Ustawiamy parametr Drop_first = True, aby to zrobić. Najpierw utwórzmy ramkę danych, abyśmy mogli zastosować funkcję get_dumies () do jej kolumny.
Jak można zaobserwować, kolumna kursu jest kategoryczna i ma pewne brakujące wartości. Teraz konwertujemy kategoryczną kolumnę „kurs” na zmienne fikcyjne o wartości 0/1.
Zauważ, że w wyjściu są teraz tylko 2 zmienne manekina: kurs_python i kurs_react. Nie ma zmiennej kategorii „Java”. Gdy Drop_first jest ustawiony na true, get_dummies () nie uwzględni kolumny manekina dla pierwszej kategorii zmiennej. Potrzeba tylko k - 1 zmienne fikcyjne, aby przekazać te same informacje, gdy zmienna kategoryczna ma k wzajemnie wykluczające się kategorie. Możemy również dołączyć zmienną fikcyjną dla brakujących wartości, określając parametr manekinu_na = prawdziwy.
Możesz zauważyć, że zmienna fikcyjna o nazwie kurs_nan jest również dodawana przez funkcję get_dummies () w wyjściu. Inne parametry funkcji mogą być również użyte do zmiany wyjścia DataFrame.
Wniosek
W tym samouczku omówiliśmy, jak uzyskać zmienne fikcyjne w pandy. Widzieliśmy, że get_dummy () można użyć do uzyskania zmiennych manekinów. Widzieliśmy składnię funkcji i jej parametry, aby zrozumieć jej funkcjonalność. Wdrożyliśmy kilka przykładów, aby nauczyć Cię, jak korzystać z funkcji get_dumies () na pandas frame i serii, aby uzyskać zmienne manekina. Ponadto widzieliśmy pewne parametry funkcji get_dummy (), aby zmodyfikować wyniki lub wyniki danych danych.