Skip to content
Home » Pandas: Como convertir strings en un dataframe to integer

Pandas: Como convertir strings en un dataframe to integer

  • by

En este articulo veremos dos aproximaciones para convertir valores en un dataframe desde string hacia integer

Supongamos que tenemos los siguientes datos en nuestro dataframe:

Como podemos ver, los valores son numericos, pero estan ingresados como string,

Lo anterior lo podemos convertir a integer de la siguiente forma:

df['delay']=df['delay'].astype(int)

Como podemos ver, ahora la columna delay esta expresada en integer.

Ahora bien, que pasa cuando en los datos hay textos o entradas con valores que no se pueden convertir a integer, la forma anterior nos dará un error:

df['delay']=df['delay'].astype(int)
ValueError: invalid literal for int() with base 10: 'No info'

Para este caso podemos convertir usando la funcion to_numeric de la siguiente forma:

df['delay'] = pd.to_numeric(df['delay'],errors='coerce')

Obteniendo lo siguiente:

Como ven, los valores con texto se han reemplazado con el valor NaN. Podemos finalmente, y si es deseado convertir estos valores NaN a 0 u otro valor con la funcion replace de Numpy de la siguiente forma:

import numpy as np
df.replace(np.nan,0,regex=True)

Si quieren profundizar mas acerca de esta funcion pueden revisar la documentacion oficial aquí

Leave a Reply

Your email address will not be published. Required fields are marked *