Pandy jest jednym z najcenniejszych pakietów danych i manipulacji Pythona.
Oferuje takie funkcje, jak niestandardowe struktury danych zbudowane na Python.
W tym artykule omówiono konwertowanie kolumny z jednego typu danych na typ int w ramach pandaas danych.
Konfigurowanie pandy
Przed zanurzeniem się w sposób wykonywania operacji konwersji musimy skonfigurować pandy w naszym środowisku Python.
Jeśli używasz środowiska podstawowego w interpreterie Anaconda, istnieje szansa, że masz zainstalowane pandy.
Jednak na natywnej instalacji Pythona musisz go zainstalować ręcznie.
Możesz to zrobić, uruchamiając polecenie:
$ pip instaluj pandyNa Linux, uruchom
$ sudo pip3 instaluj pandyW środowiskach Anaconda lub Miniconda zainstaluj pandy z kondą.
$ CDADA Zainstaluj pandyPandy Utwórz przykładową ramkę danych
Skonfigurujmy przykładową ramkę danych do celów ilustracyjnych w tym samouczku. Możesz skopiować poniższy kod lub użyć danych danych.
importować pandy jako PDPo utworzeniu danych danych możemy sprawdzić dane.
Pandy pokazują typ kolumny
Dobrze jest wiedzieć, czy istniejący typ można rzucić na int, zanim przekształci kolumnę z jednego typu na int.
Na przykład próbę przekonwertowania kolumny zawierającej nazwy nie można przekonwertować na INT.
Możemy wyświetlić rodzaj strumienia danych za pomocą właściwości DTYPES
Użyj składni:
Ramka danych.DtypesW naszym przykładowym ramie danych możemy uzyskać typy kolumn jako:
df.DtypesZ powyższego wyjścia widzimy, że żadna z kolumn nie utrzymuje typu int.
Pandy konwertują kolumnę z ciągów na int int.
Aby przekonwertować pojedynczą kolumnę na INT, używamy funkcji APTYPE () i przekazujemy docelowy typ danych jako parametr.
Składnia funkcji:
Ramka danych.Astype (DTYPE, copy = true, errors = „Raise”)W naszym przykładowym ramce danych możemy przekonwertować kolumnę identyfikatora na typ int za pomocą funkcji atetype (), jak pokazano w poniższym kodzie:
df ['id'] = df ['id'].Astype (int)Kod powyżej określa kolumnę „id” jako obiekt docelowy. Następnie przekazujemy INT jako typ do funkcji Astype ().
Możemy sprawdzić nowy typ danych dla każdej kolumny w DataFrame:
df.DtypesKolumna identyfikacyjna została przekonwertowana na int, podczas gdy reszta pozostaje niezmieniona.
Pandy konwertują wiele kolumn na int
Funkcja istype () pozwala nam konwertować więcej niż jedną kolumnę i konwertować je na określony typ.
Na przykład możemy uruchomić następujący kod, aby przekonwertować kolumny identyfikatora i punktów na typ int.
df [['id', „punkty”]] = df [['id', 'punkty']].Astype (int)Tutaj określamy wiele kolumn za pomocą notacji Square Bracket. To pozwala nam przekonwertować kolumny na typ danych określony w funkcji Astype ().
Jeśli sprawdzimy typ kolumny, powinniśmy zobaczyć wyjście:
df.DtypesMożemy teraz zobaczyć, że kolumna identyfikatora i punktów została przekonwertowana na typ int32.
Pandy konwertują wiele kolumn na wiele typów
Funkcja ASTYPE () pozwala nam określić kolumnę i typ docelowy jako słownik.
Załóżmy, że chcemy przekonwertować kolumnę ID na INT32 i kolumnę punktów na float64.
Możemy uruchomić następujący kod:
Convert_to = „id”: int, „punkty”: floatW powyższym kodzie zaczynamy od zdefiniowania słownika trzymającego kolumnę docelową jako klucz i typ docelowy jako wartość.
Następnie używamy funkcji ASTYPE () do konwersji kolumn w słowniku na typy zestawu.
Sprawdzanie typów kolumn powinno zwrócić:
df.DtypesNależy zauważyć, że kolumna ID jest INT32, a kolumna punktowa jest typu float32.
Pandy konwertują kolumnę na int - to_numeric ()
Pandy zapewnia nam również funkcję To_Numeric (). Ta funkcja pozwala nam przekonwertować kolumnę na typ numeryczny.
Składnia funkcji jest jak pokazana:
Pandy.to_numeric (arg, errors = „Raise”, dancast = brak)Na przykład, aby przekonwertować kolumnę ID na numeryczną w naszym przykładowym ramie danych, możemy uruchomić:
df ['id'] = pd.to_numeric (df ['id'])Kod powinien wziąć kolumnę identyfikacyjną i przekonwertować go na typ int.
Pandy przekonwertuj DataFrame na najlepszy możliwy typ danych
Funkcja Convert_DTypes () w PandaS pozwala nam przekonwertować całą ramkę danych na najbliższy możliwy typ.
Składnia funkcji jest jak pokazana:
Ramka danych.Convert_dtypes (eplux_objects = true, convert_string = true,Możesz sprawdzić dokumenty w poniższym zasobie:
https: // pandy.Pydata.Org/Docs/Reference/API/Pandas.Ramka danych.Convert_dtypes.html
Na przykład, aby przekonwertować naszą przykładową ramkę danych na najbliższy możliwy typ, możemy uruchomić:
df = df.convert_dtypes ()Jeśli sprawdzimy typ:
df.DtypesZauważysz, że każda kolumna została przekonwertowana na najbliższy odpowiedni typ. Na przykład funkcja przekształca małe ints na typ int32.
Podobnie kolumna nazw jest konwertowana na typ ciągu, ponieważ trzyma wartości ciągów.
Wreszcie, ponieważ kolumna punktów utrzymuje większe liczby całkowite, jest przekonwertowana na typ INT64.
Wniosek
W tym artykule podaliśmy szczegółowe metody i przykłady konwersji ramki danych pandas z jednego typu na inny.