数据框无法填充熊猫的NaN值

时间:2019-06-01 19:47:25

标签: python pandas dataframe

我有一个DataFrame,带有一些NaN值,我想适合我的DataFrame的平均值

data.fillna(data.mean())

然后,我检查是否还有NaN或空值

 print('is nan', data.isna().values.any()) #prints True
 print('is null', data.isnull().values.any()) #prints True

在打印之前是真实的,我不明白,因为应该填充NaN值。

我想念什么吗?

2 个答案:

答案 0 :(得分:2)

尝试此操作以更改您的数据框:

data.fillna(data.mean(), inplace=True)

或者执行此操作以创建一个新的数据框,并用data.mean()替换NaN:

data_new = data.fillna(data.mean())

答案 1 :(得分:1)

这是一个可复制的示例。

import pandas as pd
# generate sample dataframe some filled with NaN
data = pd.DataFrame([[1, 2], [np.nan, 4], [5, 6], [7, np.nan]], columns=["A", "B"])
# apply per-column and substitue the mean of that columns 
data.apply(lambda x: x.fillna(x.mean()),axis=1)
相关问题