Pandas Conwert Kolumna na int

Pandas Conwert Kolumna na int
Pandy to bezpłatna i open source biblioteka Python, która zapewnia szybkie, elastyczne i ekspresyjne struktury danych, które ułatwiają pracę z danymi naukowymi.

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 pandy

Na Linux, uruchom

$ sudo pip3 instaluj pandy

W środowiskach Anaconda lub Miniconda zainstaluj pandy z kondą.

$ CDADA Zainstaluj pandy
$ sudo ceda instaluj pandy

Pandy 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 PD
df = pd.DataFrame ('id': ['1', '2', '3', '4', '5'],
„Nazwa”: [„Marja Jérôme”, „Alexios Shiva”, „Mohan Famke”, „Lovrenco Ilar”, „Steffen Angus”],
„Punkty”: [„50000”, „70899”, „70000”, „81000”, „110000”]))

Po 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.Dtypes

W naszym przykładowym ramie danych możemy uzyskać typy kolumn jako:

df.Dtypes
obiekt id
obiekt nazwy
obiekt punktów
DTYPE: Object

Z 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”)
  1. DTYPE - Określa typ Pythona lub dtyp numpy, do którego obiekt jest konwertowany.
  2. Kopia - pozwala zwrócić kopię obiektu zamiast działać.
  3. błędy - określa działanie w przypadku błędu. Domyślnie funkcja zwiększy błędy.

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.Dtypes
ID int32
obiekt nazwy
obiekt punktów
DTYPE: Object

Kolumna 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.Dtypes
ID int32
obiekt nazwy
Punkty int32
DTYPE: Object

Moż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”: float
df = df.asype (Convert_to)

W 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.Dtypes
ID int32
obiekt nazwy
Punkty float64
DTYPE: Object

Należ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,
Convert_integer = true, Convert_boolean = true, Convert_floating = 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.Dtypes
ID int32
Nazwa ciąg
Punkty int64
DTYPE: Object

Zauważ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.