Skip to content

read_csv() fills empty string with nan #10205

Closed
@ronanpaixao

Description

@ronanpaixao

Pandas stores strings (str and unicode) with dtype=object. As such, some unexpected things happen, like empty fields being filled with nan, which is a float. Expected behavior should fill with empty string "" or at least None.

>>> import pandas as pd
>>> from StringIO import StringIO
>>> pd.read_csv(StringIO('col1,col2,col3\nfoo,,bar'),dtype=str)
  col1 col2 col3
0  foo  NaN  bar
>>> type(pd.read_csv(StringIO('col1,col2,col3\nfoo,,bar'),dtype=str).iloc[0,1])
float

Metadata

Metadata

Assignees

No one assigned

    Labels

    Missing-datanp.nan, pd.NaT, pd.NA, dropna, isnull, interpolateStringsString extension data type and string dataUsage Question

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions