簡體   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