Как нормализовать данные с помощью MinMaxScaler()?
Имею фрейм данных с разными типами данных как-то: int64, float64, object.
Пытаюсь нормализовать данные с помощью MinMaxScaler(), вот так:
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
names = train.columns
d = scaler.fit_transform(train)
scaled_df = pd.DataFrame(d, columns=names)
scaled_df.head()
Выдаёт ошибку:
could not convert string to float: '00000bfd7d50f01092811bc0c8d7b0d6fe7c3596'
Это признак 'ID' клиента. Как мне нормализовать только числовые данные с помощью MinMaxScaler?
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Можно воспользоваться этим ответом, чтобы получить только данные из числовых колонок:
import numpy as np
df_numerics_only = df.select_dtypes(include=np.number)
Либо получить названия этих числовых колонок:
colnames_numerics_only = df.select_dtypes(include=np.number).columns.tolist()