This is discussed on Stack Overflow [here](http://stackoverflow.com/questions/28354207/why-is-an-empty-dataframe-of-dtype-str-filled-of-n/28355909). When constructing a DataFrame with the `dtype` as `str` but not passing in any data (just an index), the resulting DataFrame is filled with the letter `n`: ``` python In [61]: pd.DataFrame(index=range(2), columns=[0], dtype=str) Out[61]: 0 0 n 1 n ``` This is contrary to the behaviour of Series when no data is passed in: ``` python In [62]: pd.Series(index=range(2), dtype=str) Out[62]: 0 NaN 1 NaN dtype: object ``` It would be logical for the DataFrame to be populated with `NaN` in this instance too.