Pandy do słownika

Pandy Do Slownika



„W Pythonie do przechowywania informacji w postaci par klucz-wartość używana jest struktura danych zwana słownikiem. Obiekty słownika są zoptymalizowane pod kątem wyodrębniania danych/wartości, gdy klucz lub klucze są znane. Pamiętaj, że słowniki mogą zawierać zduplikowane klucze. Aby skutecznie znaleźć wartości przy użyciu powiązanego indeksu, możemy przekonwertować serię pand lub ramkę danych z odpowiednim indeksem na obiekt słownika z parami klucz-wartość „indeks: wartość”. Aby osiągnąć to zadanie, można użyć metody „to_dict()”. Ta funkcja jest wbudowaną funkcją znajdującą się w klasie Series modułu pandy. Ramka danych jest konwertowana na podobny do listy python słownik danych serii przy użyciu metody pandas.to_dict(), w zależności od określonej wartości parametru orient.”

Jak przekonwertować pandy na słownik Pythona?

Istnieje wiele metod konwersji pand na słownik. Jednak, aby przekształcić ramkę danych Pandy w słownik Pythona, użyjemy metody to_dict() w Pandach. Za pomocą funkcji to_dict() możemy zorientować pary klucz-wartość zwróconego słownika na różne sposoby. Składnia funkcji jest następująca:







Składnia



panda.to_dykt ( wschód = „dykt”, w = )



Parametry

Orient: Typ danych do konwersji kolumn (serie) jest określony przez wartość ciągu („dict”, „list”, „records”, „index”, „series”, „split”). Na przykład słowo kluczowe „lista” dałoby słownik Pythona obiektów listowych z kluczami „Nazwa kolumny” i „Lista” (przekonwertowane serie) jako dane wyjściowe.





w: class, może być przekazywana jako instancja lub rzeczywista klasa. Na przykład instancja klasy może być przekazana w przypadku domyślnego dict. Domyślna wartość parametru to dict.

Typ zwrotu: Słownik przekonwertowany z ramki danych lub serii.



Przykład nr 01: Konwersja ramki danych Pandy na słownik

Korzystając z krotki list w funkcji pd.DataFrame(), utworzymy podstawową ramkę danych z kilkoma kolumnami i wierszami, abyśmy mogli później przekonwertować ją na słownik Pythona.


Stworzyliśmy naszą ramkę danych, przekazując listę wewnątrz funkcji pd.DataFrame(). W powyższej ramce danych mamy trzy kolumny „firma”, „sprzedaż” i „przychody”. W kolumnie firma zapisaliśmy nazwy firm losowych jako („A&B”, „Max_tech”, „XT”, „MJ”, „Quanto”, „Mini_X”, „Zomo”, „AU”, „HL” , “ZMX”, “Earny”), kolumna “sprzedaż” reprezentuje sprzedaż każdej firmy jako (“217”, “200”, “199”, “150”, “210”, “216”, “185 ”, „189”, „202”, „159”, „205”), a kolumna „przychody” przechowuje wartości reprezentujące przychody każdej firmy w stosunku do odpowiedniej sprzedaży (340000   320000  300000 270000  315000  335000  250000     255000   301000   244000 305000). Teraz przekonwertujemy naszą ramkę danych „df” na słownik Pythona.


Stosując metodę to_dict() do ramki danych df, przekonwertowaliśmy ramkę danych pandas na słownik.

Przykład nr 02: Konwersja ramki danych Pandas utworzonej z pliku CSV na słownik

W przykładzie nr 1 utworzyliśmy ramkę danych za pomocą krotek wewnątrz listy. Teraz utworzymy ramkę danych za pomocą pliku CSV, a następnie przekonwertujemy ją na słownik za pomocą funkcji to_dict().


Aby odczytać plik jako ramkę danych, użyliśmy funkcji pd.read_csv(). W powyższej ramce danych mamy dwie kolumny (Nazwa i Znaki) oraz siedemnaście wierszy (od 0 do 16). Teraz użyjemy metody to_dict().


Funkcja przekształciła naszą ramkę danych „df” w słownik Pythona.

Przykład nr 03: Konwersja ramki danych Pandas do słownika zawierającego listy wartości

We wcześniejszych przykładach przekonwertowaliśmy pandy do słownika Pythona zawierającego wiele słowników. Podczas konwertowania ramki danych na obiekt słownika etykiety kolumn powinny służyć jako klucze słownika, a wszystkie dane lub wartości kolumn powinny zostać dodane do wynikowego słownika jako lista wartości dla każdego klucza.


Stworzyliśmy ramkę danych zawierającą trzy kolumny „imię”, „kraj” i „wiek”. W kolumnie „imię” zapisaliśmy wartości danych („Anna”, „Marty”, „Carl”, „Mary”, „Cleb”, „Ali”, „Alexa”, „Becky”, „Ryan”) . Podczas gdy pozostałe kolumny kraj i wiek to silne wartości, takie jak („USA”, „Anglia”, „USA”, „Francja”, „Rosja”, „Rosja”, „Francja”, „Anglia”, „USA”) oraz ( 34, 32, 30, 27, 31, 33, 35, 25, 30). Stworzymy słownik zawierający listy za pomocą parametru „list” wewnątrz metody to_dict().


Używając parametru list jako argumentu wewnątrz funkcji to_list(), wygenerowaliśmy słownik zawierający wiele list.

Przykład nr 03: Konwersja ramki danych Pandas do słownika zawierającego szereg wartości

Gdy DataFrame musi zostać przekształcona w słownik, nazwa kolumny służy jako klucze słownika, a indeks wiersza i dane w kolumnie jako wartość dla odpowiednich kluczy w słowniku.


Wymaganą ramkę danych utworzyliśmy za pomocą metody pd.DataFrame(). W ostatnio utworzonej ramce danych mamy dwie kolumny. Kolumna nazwy przechowuje wartości danych w postaci ciągu („Kim”, „Morris”, „Casper”, „Milli”, „Dave”, „Will”, „Billy”), natomiast kolumny oznaczeń składają się z danych liczbowych jako ( 8, 9, 6, 7, 10, 7, 8). Użyjemy parametru „series” jako ciągu znaków wewnątrz funkcji to_dict().

Przykład # 04: Konwertuj ramkę danych Pandas na słownik bez indeksu i nagłówka

Parametr „split” funkcji to_dict() może być użyty do wyodrębnienia danych z DataFrame bez nagłówków kolumn lub gdy musimy usunąć nagłówek i indeks wiersza z danych. Za pomocą tego parametru etykiety kolumn, indeks wiersza i rzeczywiste dane są dzielone na trzy składniki. Stwórzmy ramkę danych, abyśmy mogli podzielić ją na trzy części podczas konwertowania do słownika.


Stworzyliśmy dwie kolumny z etykietami „imię” i „wiek” zawierające wartości („Dave”, „Morris”, „Billy”, „Milli”, „Kim”, „Will”, „Casper”) oraz (19, 19 , 25, 21, 19, 21, 23). Przekształćmy je w słowniki Pythona.


Używając klucza „dane”, możemy pobrać dane z wynikowego słownika bez indeksu lub nagłówka.

Przykład # 05: Konwertuj ramkę danych Pandas do słownika według wiersza i indeksu wiersza

Parametru „record” można użyć wewnątrz funkcji to_dict() do przechowywania danych każdego wiersza dataframe w wielu odrębnych obiektach słownikowych na liście lub gdy wymagane są dane wierszowe. Zostanie zwrócona lista zawierająca obiekty słownika. Słownik z etykietą kolumny jako kluczem i danymi kolumny jako wartością dla każdego wiersza.


Stworzyliśmy ramkę danych z kolumnami „imię” i „wynagrodzenie”. Kolumna „imię” zawiera wartości danych („Leo”, „Haris”, „Wanda”, „Mike”, „Kelly”, „Adam”, „Jack”), a kolumna wynagrodzeń przechowuje wartości (12000, 12500 , 14000, 11000, 12000, 13000, 12500). Teraz stwórzmy listę z wieloma słownikami Pythona zawierającymi dane każdego wiersza.


Parametru index można również użyć do przekonwertowania danych każdego wiersza z ramki danych na słownik. Zostanie zwrócona lista zawierająca pozycje słownika. Każdy wiersz generuje słownik. Gdzie indeks wiersza będzie kluczem, a wartością będzie słownikiem danych i etykietą kolumny.

Wniosek

W tym samouczku omówiliśmy, w jaki sposób możemy przekonwertować obiekty dataframe lub pandas na słownik Pythona. Widzieliśmy składnię funkcji to_dict(), aby zrozumieć parametry tej funkcji i sposób modyfikowania wyników funkcji, określając funkcję z różnymi parametrami. W przykładach tego samouczka użyliśmy metody to_dict(), wbudowanej funkcji pandas, aby zmienić obiekty pandas na słownik Pythona.