我该怎么转换'?'到NaN

时间:2017-09-02 18:14:44

标签: python pandas dataframe

我有一个数据集,并且缺少值被编码为?。我的问题是如何将缺失值?更改为NaN?所以我可以使用NaN删除任何行。我可以使用.replace()吗?

4 个答案:

答案 0 :(得分:2)

使用replace

 df = df.replace('?', np.nan)

答案 1 :(得分:2)

您还可以通过以下方式最初读取数据: df = pd.read_csv('filename',na_values = '?') 它将自动替换为“?”到NaN

答案 2 :(得分:2)

您也可以这样,

  

df [df =='?'] = np.nan

答案 3 :(得分:1)

如果要删除包含“?”的行,则无需将'?'更改为'NaN'

df[(df=='?').sum(1)==0]