В одном из фреймов данных я заполняю пустые значения средним из других значений на основе группы по
. Предположим, мой фрейм данных выглядит следующим образом
Month Dayname Class Val1 Val2
Sep Mon A 1 2
Sep Mon B 3 4
Sep Tue A 7 5
Oct Mon F 5 2
Oct Fri K 2 8
Oct Fri F 7 3
Sep Mon A NaN NaN
Sep Mon B NaN NaN
Oct Fri F NaN NaN
Когда я использую этот код, он обновляет NaNправильно,
df = df.groupby(['Month','Dayname']).transform(lambda x: x.fillna(x.mean()))
Но это удаляет группу по столбцам Месяц и день
Конечные результаты будут такими:
Class Val1 Val2
A 1 2
B 3 4
A 7 5
F 5 2
K 2 8
F 7 3
A 2 3
B 2 3
F 4.5 5.5
Какможно сделать эту строку с сохранением группы по столбцам