Funzione Pandas DataFrame.astype()

Minahil Noor 30 gennaio 2023
  1. Sintassi di pandas.DataFrame.astype():
  2. Codici di esempio: Metodo DataFrame.astype() per modificare il tipo di dati di una colonna
  3. Codici di esempio: metodo DataFrame.astype() per modificare il tipo di dati di tutte le colonne del DataFrame
  4. Codici di esempio: Metodo DataFrame.astype() per modificare il tipo di dati con eccezione
Funzione Pandas DataFrame.astype()

La funzione Python Pandas DataFrame.astype() cambia il tipo di dati degli oggetti in un tipo di dati specificato.

Sintassi di pandas.DataFrame.astype():

DataFrame.astype(dtype, copy=True, errors="raise")

Parametri

dtype Tipo di dati che vogliamo assegnare al nostro oggetto.
copy Un parametro booleano. Restituisce una copia quando True.
errors Controlla la generazione di eccezioni sui dati non validi per il tipo di dati fornito. Ha due opzioni.
raise: consente di sollevare eccezioni.
ignore: sopprime le eccezioni. Se esiste un errore, restituisce l’oggetto originale.

Ritorno

Restituisce il DataFrame con i tipi di dati trasmessi.

Codici di esempio: Metodo DataFrame.astype() per modificare il tipo di dati di una colonna

import pandas as pd

dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 78,4: 95},
                        'Name': {0: 'Olivia', 1: 'John', 2: 'Laura',3: 'Ben',4: 'Kevin'},
                        'Obtained Marks': {0: 90, 1: 75, 2: 82, 3: 64, 4: 45}})

print("The Original Data Types of the Data frame are: \n")
print(dataframe.dtypes)

dataframe1 = dataframe.astype({'Attendance': 'int32'}).dtypes
print("The Modified Data Types of the Data frame are: \n")
print(dataframe1)

Produzione:

The Original Data Types of the Data frame are: 

Attendance         int64
Name              object
Obtained Marks     int64
dtype: object
The Modified Data Types of the Data frame are: 

Attendance         int32
Name              object
Obtained Marks     int64
dtype: object

La funzione ha restituito il tipo di dati cast. Abbiamo usato la funzione dtypes() per mostrare i tipi di dati delle colonne del DataFrame.

Codici di esempio: metodo DataFrame.astype() per modificare il tipo di dati di tutte le colonne del DataFrame

Cercheremo di cambiare il tipo di dati del DataFrame dato.

import pandas as pd
dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 78,4: 95},
                        'Name': {0: 'Olivia', 1: 'John', 2: 'Laura',3: 'Ben',4: 'Kevin'},
                        'Obtained Marks': {0: 90, 1: 75, 2: 82, 3: 64, 4: 45}})
print("The Original Data Types of the Data frame are: \n")
print(dataframe.dtypes)

dataframe1 = dataframe.astype('object').dtypes
print("The Modified Data Types of the Data frame are: \n")
print(dataframe1)

Produzione:

The Original Data Types of the Data frame are: 

Attendance         int64
Name              object
Obtained Marks     int64
dtype: object
The Modified Data Types of the Data frame are: 

Attendance        object
Name              object
Obtained Marks    object
dtype: object

La funzione ha restituito il DataFrame modificato. Ha cambiato il tipo di dati di tutte le colonne in object.

Codici di esempio: Metodo DataFrame.astype() per modificare il tipo di dati con eccezione

Ora imposteremo il tipo di dati object a int32. La funzione ignorerà l’eccezione poiché passeremo il parametro errors= 'ignore'.

import pandas as pd

dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 78,4: 95},
                        'Name': {0: 'Olivia', 1: 'John', 2: 'Laura',3: 'Ben',4: 'Kevin'},
                        'Obtained Marks': {0: 90, 1: 75, 2: 82, 3: 64, 4: 45}})

print("The Original Data Types of the Data frame are: \n")
print(dataframe.dtypes)

dataframe1 = dataframe.astype('int32', errors='ignore').dtypes
print("The Modified Data Types of the Data frame are: \n")
print(dataframe1)

Produzione:

The Original Data Types of the Data frame are: 

Attendance         int64
Name              object
Obtained Marks     int64
dtype: object
The Modified Data Types of the Data frame are: 

Attendance         int32
Name              object
Obtained Marks     int32
dtype: object

Notare che la funzione non ha sollevato eccezioni. Ha ignorato l’errore poiché stavamo trasmettendo l ‘object a int32. Semplicemente non ha cambiato il tipo di dati della colonna Name.

Articolo correlato - Pandas DataFrame