Как масштабировать данные от -1 до 1 в pandas - PullRequest
0 голосов
/ 04 апреля 2020

enter image description here

enter image description here

Привет, ребята! Может кто-нибудь, пожалуйста, помогите мне с этим. bh_df - это набор данных, с которым я работаю. Как вы можете видеть, данные находятся в пределах ок. 79 и 77. Мне нужно масштабировать его от -1 до 1. Заранее спасибо! Я хотел сделать x_max-x_min (рекомендуется здесь https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.MinMaxScaler.html), но моя минимальная точка данных равна 0, поэтому я не думаю, что она будет полезна.

1 Ответ

2 голосов
/ 04 апреля 2020

Для этого вам нужна функция, которая преобразует ваши данные так, чтобы

x_new = (x - min_x)  / (max_x - min_x)

Используя pandas

df = df.apply(lambda x:(x-min(x))/(max(x)-min(x)), axis = 0)

Использование sklearn.preprocessing.MinMaxScaler

from sklearn.preprocessing import MinMaxScaler


scaler = MinMaxScaler(feature_range=(-1, 1))
normalised_data = scaler.fit_transform(df)

Как примечание, если данные должны быть поданы в модель ML, вам следует позвонить fit() по обучению и transform() над испытательными и проверочными наборами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...