Я использую модуль KernelDensity из sklearn.neighbors, но значения оси y являются странными. Кто-нибудь знает, как я могу это исправить? Я хотел бы, чтобы ось y соответствовала процентной вероятности.Как сделать KernalDensity нормализовать до 1?
X = data[:, np.newaxis]
X_plot = np.linspace(0, 20, 1000)[:, np.newaxis]
kde = KernelDensity(kernel='gaussian', bandwidth=0.15).fit(X)
log_dens = kde.score_samples(X_plot)
axis.plot(X_plot[:, 0], np.exp(log_dens), '-',
label="kernel = '{0}'".format('pft'))
'Я бы хотел, чтобы ось y соответствовала процентной вероятности' - что такое процентная вероятность? – cel
Не уверен, что это то, что вы ищете, но посмотрели ли вы на «MinMaxScaler»? http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.MinMaxScaler.html – Ryan
Что вы хотите сделать с вероятностью? Классификация? Обнаружение выбросов? Заметим, что с оценкой плотности ядра вы оцениваете функцию плотности вероятности непрерывной случайной величины. Невозможно получить вероятность для отдельного значения с плавающей точкой, вы можете получить вероятность того, что значение находится в определенном интервале, путем интеграции функции плотности в этом интервале. –