2016-11-26 7 views
0

Я работаю над алгоритмом KNN в python и пытался нормализовать свои кадры данных с помощью MinMaxScaler, чтобы преобразовать данные в диапазоне от 0 до 1.MinMax Scaler в sklearn не нормализует значения столбца между 0 и 1

Однако, когда я возвращаю выход, я наблюдаю некоторый столбец min/max, который превышает 1. Я использую его неправильно?

Ниже мой фрагмент минимального/максимального значения, возвращенное: enter image description here

Код Использовал:

kdd_data_10percent = pandas.read_csv("data/kdd_10pc", header=None, names = col_names) 
features = kdd_data_10percent[num_features].astype(float)#num_features contain the specific column labels i wish to extract  
features.apply(lambda x: MinMaxScaler().fit_transform(x)) 

Особенность содержит dataframe, содержащее столбцы (например wrong_fragment, срочно ...).

Если я правильно понял, после выполнения MinMaxScaler возвращенные результаты гарантируют, что значения каждого столбца будут нормализованы только в диапазоне от 0 -1. Я прав?

+0

http://stackoverflow.com/a/21765852/356729 именно то, что вы ищете – dukebody

ответ

0

Вы правы, MinMaxScaler будет нормализовать ваши данные от 0 до 1. 0 будет min вашей колонки и 1 макс.

Функция Apply на самом деле не будет преобразовывать ваши функции, она просто вернет dataframe с преобразованными столбцами. Так что вам нужно, чтобы повлиять на трансформацию к функциям:

features = features.apply(lambda x: MinMaxScaler().fit_transform(x)) 

это должно работать ...

+0

этой код не работает, если u ссылается на мой фрагмент кода, это именно тот код, который я использовал. –

 Смежные вопросы

  • Нет связанных вопросов^_^