0
Я пытаюсь построить простую функцию, чтобы заполнить столбцы панды с некоторые распределения, но он не может заполнить всю таблицу (ДФ еще есть NaN после fillna ...)панды fillna() не работает должным образом
def simple_impute_missing(df):
from numpy.random import normal
rnd_filled = pd.DataFrame({c : normal(df[c].mean(), df[c].std(), len(df))
for c in df.columns[3:]})
filled_df = df.fillna(rnd_filled)
return filled_df
Но возвращенный df, все еще имеет NaNs!
Я проверил, чтобы rnd_filled был заполнен и имел правильную форму. Что происходит?
Аре NaN только первой, второй и третьей колонке? – jezrael
, если необходимо заменить NaN во всех df, удалите '[: 3]' из 'df.columns [3:]' – jezrael
другой возможной проблемой является то, что все данные в некотором столбце являются «NaN». Можете ли вы добавить образец данных? – jezrael