Solución:
Todavía estaba confundido después de leer las otras respuestas y comentarios. Pero la respuesta ahora parece más simple, así que aquí tienes.
Desde Pandas versión 0.9 (de 2012), puede leer su csv con celdas vacías interpretadas como cadenas vacías simplemente configurando keep_default_na=False
:
pd.read_csv('test.csv', keep_default_na=False)
Este problema se explica más claramente en
- Manejo más consistente de na_values en read_csv · Número 1657 · pandas-dev / pandas
Eso se solucionó el 19 de agosto de 2012 para la versión 0.9 de Pandas en
- ERROR: na_values más consistentes # 1657 · pandas-dev /[email protected]
Agregué un boleto para agregar una opción de algún tipo aquí:
https://github.com/pydata/pandas/issues/1450
Mientras tanto, result.fillna('')
deberías hacer lo que quieras
EDITAR: en la versión de desarrollo (para ser 0.8.0 final) si especifica una lista vacía de na_values
, las cadenas vacías seguirán siendo cadenas vacías en el resultado
Tenemos un argumento simple en Pandas read_csv para esto:
Usar:
df = pd.read_csv('test.csv', na_filter= False)
La documentación de Pandas explica claramente cómo funciona el argumento anterior.
Enlace