Я хочу изменить только числовые переменные в моем фрейме данных, т. Е. Вычислить пропущенные значения числовых переменных по медиане и значения факторных переменных по моде. Чтобы изменить только числовые переменные, я попробовал следующее:
xTrain.select_dtypes(include=numerics) = xTrain.select_dtypes(include=numerics).fillna(xTrain.mean(), inplace=True)
но там написано:
SyntaxError: невозможно назначить вызов функции
На самом деле, это решение просто сработало, но я не доволен им, так как оно не включает операцию присваивания ('='). Кроме того, это «частный метод» (то есть деталь реализации), и он может быть изменен или полностью удален в будущем. Было рекомендовано использовать с осторожностью ответ здесь :
xTrain._get_numeric_data().fillna(xTrain.mean(), inplace=True)
Подумал, есть ли альтернативные способы выбора только числовых столбцов и вменения их во все данные, что означает изменение только части кадра данных? Заранее спасибо!