繁体   English   中英

Dataframe无法填充pandas中的NaN值

[英]Dataframe can't fill NaN values in pandas

我有一个带有一些NaN值的DataFrame ,我希望与我的DataFrame的平均值相符

data.fillna(data.mean())

之后,我检查是否还有NaN或null值

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

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

我错过了什么吗?

试试这个来改变您的数据框架:

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

或者这样做是为了创建一个新的数据帧,其中NaNs被data.mean()取代:

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

这是一个可重复的样本示例。

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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM