"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo reemplazo valores en blanco (espacios en blanco) con NaN en un Pandas DataFrame?

¿Cómo reemplazo valores en blanco (espacios en blanco) con NaN en un Pandas DataFrame?

Publicado el 2024-11-08
Navegar:320

How do I replace blank values (whitespace) with NaN in a Pandas DataFrame?

Reemplazar valores en blanco (espacios en blanco) con NaN en Pandas

La limpieza de datos es un paso crucial en el análisis de datos. Una tarea común es reemplazar valores en blanco (espacios en blanco) con NaN. Esto se puede hacer de manera eficiente usando Pandas.

Para lograr esto, utilice la función df.replace(). Esta función permite una operación de búsqueda y reemplazo basada en expresiones regulares en valores de DataFrame. Así es como puedes implementarlo:

import numpy as np
import pandas as pd

df = pd.DataFrame([
    [-0.532681, 'foo', 0],
    [1.490752, 'bar', 1],
    [-1.387326, 'foo', 2],
    [0.814772, 'baz', ' '],
    [-0.222552, '   ', 4],
    [-1.176781,  'qux', '  '],
], columns='A B C'.split(), index=pd.date_range('2000-01-01','2000-01-06'))

# Replace fields that contain only whitespace (or are empty) with NaN
print(df.replace(r'^\s*$', np.nan, regex=True))

# Output:
#                    A    B   C
# 2000-01-01 -0.532681  foo   0
# 2000-01-02  1.490752  bar   1
# 2000-01-03 -1.387326  foo   2
# 2000-01-04  0.814772  baz NaN
# 2000-01-05 -0.222552  NaN   4
# 2000-01-06 -1.176781  qux NaN

Tenga en cuenta que este código reemplaza los campos que contienen solo espacios en blanco o que están vacíos (es decir, coinciden con la expresión regular r'^\s*$'**) . Si sus datos válidos contienen espacios en blanco, ajuste la expresión regular en consecuencia (por ejemplo, elimine **$ del final de r'^\s ').

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3