Menu
Coddy logo textTech

Modificar datos

Lección 11 de 19 del curso Análisis con Pandas de Coddy.

Para sobrescribir los datos de una celda, columna o fila específica, puedes asignarle un nuevo valor:

df["existing_col"] = new_value            # Modificar columna
df.loc[index] = new_value                 # Modificar fila
df.loc[index, "existing_col"] = new_value # modificar celda

Para actualizar el valor de la columna de las filas que cumplen una condición específica, utiliza la misma condición que aprendimos en lecciones anteriores con el método .loc:

df.loc[df['col'] > 5, 'existing_col'] = new_value
 
df.loc[(df['col'] <= 5) & (df['col'] > 2), 'existing_col'] = new_value

Es importante utilizar la palabra clave loc al modificar filas existentes. Con frecuencia, al modificar un dataframe sin loc, estás tratando con una copia en lugar de los datos originales. Por ejemplo:

df[(df['col'] <= 5) & (df['col'] > 2)]["existing_col"] = new_value

Aquí, la condición devuelve una copia del dataframe en lugar de los datos originales.

challenge icon

Desafío

Fácil

El archivo CSV stats.csv contiene información sobre estadísticas.

Aquí están las primeras 5 líneas del archivo:

ID,COUNTRY,COLOR,SKILL,SKILL_POINTS,UTILIZATION,IS_VALID,CATEGORY
1,France,Signal violet,marksmanship,14,0.1924,1,SHOW
2,Solomon Islands,Pearl violet,crocheting,4,0.6108,1,TREE
3,Germany,Bottle green,calligraphy,12,0.88646,0,SHOW
4,Mauritania,Fawn brown,paper cutting,9,0.058,1,JAPE
  • Modifica todas las celdas (excepto las celdas en las columnas IS_VALID y UTILIZATION), donde IS_VALID sea igual a 1 y UTILIZATION sea menor que 0.4, al valor MODIFIED.

Almacena el resultado en la variable df.

Pruébalo tú mismo

# pandas como pd ya está importado
df = pd.read_csv("./stats.csv")
for column in df.columns:
    if column not in ["IS_VALID", "UTILIZATION"]:
        df[column] = df[column].astype(object)
# Escribe tu código debajo

Todas las lecciones de Análisis con Pandas