У меня есть некоторые данные, которые я предполагаю, поступает из дистрибутива, и я пытаюсь оценить это распределение. Прямо сейчас я использую пакет KernSmooth в R с ядром Gaussian и использую функцию dpik()
пакета для автоматического выбора моей пропускной способности. (Я предполагаю, что он использует AMISE или сортировку, пожалуйста, дайте мне знать, если есть лучший способ выбора автоматической полосы пропускания). Что меня интересует, однако, находит значение x, которое соответствует самому высокому пику в распределении ... Мне кажется, что это очень простая вещь, и что-то я откладывал как тривиальный ранее, но, к моему разочарованию, я поражаю некоторые коряги. Функция bkde()
в KernSmooth передает обратно набор координат (x, y), которые отображают распределение, оцененное алгоритмом. Я знаю, что могу просто выполнить линейный поиск по данным, чтобы найти максимальное значение y, и мог бы просто захватить соответствующее значение x, но, поскольку я пишу функцию, которую можно часто вызвать в автоматизированном процессе, я чувствую, что это неэффективен. Особенно неэффективно, так как bkde()
возвращает много значений.Поиск максимального значения из функции плоттинговой плотности (оценка плотности ядра) в R
Моя другая идея состояла в том, чтобы попытаться подогнать к ней кривую и взять производную и установить ее равной нулю, но это звучит так, как будто она может быть неэффективной. Может быть, density()
будет полезной функцией здесь?
Пожалуйста, дайте мне знать, если есть какой-либо эффективный способ для этого ... Я на самом деле планирую сделать немного вывода о распределении, которое я нахожу. Такие, как обнаружение точек отсечки для измельчения определенного процента хвоста с обеих сторон (то есть доверительных интервалов) и нахождения ожидаемого значения. Мой туманный план теперь состоит в том, чтобы использовать некоторые методы монте-карло или попытаться извлечь из дистрибутива, чтобы получить представление об областях с помощью методов начальной загрузки. Любая помощь по любым методам для выполнения любого из этих вопросов будет с благодарностью.
Я бы рекомендовал книгу 1995 года Wand and Jones «Сглаживание ядра» из Chapman & Hall - книги, на которой основан пакет KernSmooth, - чтобы получить более полное представление о процессах выбора полосы пропускания. – Nan