Función Pandas DataFrame.astype()
-
Sintaxis de
pandas.DataFrame.astype(): -
Códigos de ejemplo: Método
DataFrame.astype()para cambiar el tipo de datos de una columna -
Códigos de ejemplo: Método
DataFrame.astype()para cambiar el tipo de datos de todas las columnas del DataFrame -
Códigos de ejemplo: Método
DataFrame.astype()para cambiar el tipo de datos con excepción
La función Pandas DataFrame.astype() cambia el tipo de datos de los objetos a un tipo de datos especificado.
Sintaxis de pandas.DataFrame.astype():
DataFrame.astype(dtype, copy=True, errors="raise")
Parámetros
dtype |
Tipo de datos que queremos asignar a nuestro objeto. |
copy |
Un parámetro booleano. Devuelve una copia cuando True. |
errors |
Controla el lanzamiento de excepciones sobre datos no válidos para el tipo de datos proporcionado. Tiene dos opciones. raise: permite que se levanten las excepciones. ignore: suprime las excepciones. Si existe un error, entonces devuelve el objeto original. |
Retorna
Devuelve el DataFrame con los tipos de datos fundidos.
Códigos de ejemplo: Método DataFrame.astype() para cambiar el tipo de datos de una columna
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)
Producción:
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 función ha devuelto el tipo de datos fundido. Hemos utilizado la función dtypes() para mostrar los tipos de datos de las columnas del DataFrame.
Códigos de ejemplo: Método DataFrame.astype() para cambiar el tipo de datos de todas las columnas del DataFrame
Vamos a intentar cambiar el tipo de datos del DataFrame dado.
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)
Resultado:
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 función ha devuelto el DataFrame modificado. Ha cambiado el tipo de datos de todas las columnas a object.
Códigos de ejemplo: Método DataFrame.astype() para cambiar el tipo de datos con excepción
Ahora estableceremos el tipo de datos object a int32. La función ignorará la excepción ya que pasaremos el parámetro 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)
Resultado:
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
Observe que la función no ha lanzado ninguna excepción. Ha ignorado el error ya que estábamos convirtiendo el object en int32. Simplemente no ha cambiado el tipo de datos de la columna Name.