Разрозненный набор данных в статистическом анализе данных

У меня есть некоторое количество статистических данных. Некоторые данные сильно разбросаны по большинству набора данных, как показано ниже. Что я хочу сделать, так это свести к минимуму влияние сильно разбросанных данных в наборе данных. Я хочу вычислить среднее значение набора данных, которое минимизирует влияние разбросанных данных в моем случае.

My data set is as like this:
10.02, 11, 9.12, 7.89, 10.5, 11.3, 10.9, 12, 8.99, 89.23, 328.42.

Как показано на рисунке ниже: Одни данные разбросаны, как показано ниже (скажем)

Мне нужно среднее значение, которое не равно 46,3, а ближе к другому распределению данных. На самом деле я хочу свести к минимуму влияние 89,23 и 328,42 при расчете среднего. заранее спасибо


person ln2khanal    schedule 15.08.2012    source источник
comment
Попробуйте задать этот вопрос на math.stackexchange.com или stats.stackexchange. ком . Ваш вопрос в его нынешнем виде на самом деле не связан с программированием, и вы, вероятно, получите более быстрый ответ на других сайтах.   -  person mathematician1975    schedule 15.08.2012
comment
Искал уже столько раз. Но не нашел подходящего решения. Я работаю в проекте, статистическом анализе данных. Это проблема, с которой я сталкиваюсь с последних нескольких месяцев. все равно спасибо @mathematician1975   -  person ln2khanal    schedule 15.08.2012
comment
специально этот сайт для вопросов по программированию, как упоминал @mathematician1975. Но я думаю, что это также кажется хорошим концептуальным вопросом в отношении математического, статистического, а также аспекта программирования. Надеюсь, какой-нибудь компьютерщик даст очень умный ответ. :)   -  person MrYo    schedule 15.08.2012


Ответы (2)


Вы можете заметить, что вам действительно не нужно среднее значение. Проблема здесь в том, что предполагаемое вами распределение данных отличается от фактических данных. Если вы попытаетесь подогнать к этим данным нормальное распределение, вы получите плохие результаты. Вы можете попытаться подогнать к этим данным распределение с тяжелыми хвостами, такое как распределение Коши. Если вы хотите использовать нормальное распределение, вам нужно отфильтровать ненормальные выборки. Если вы чувствуете, что знаете, каким должно быть стандартное отклонение, вы можете удалить все из приведенной выше выборки, скажем, 3 стандартных отклонения от среднего (число 3 должно зависеть от размера выборки). Этот процесс можно выполнять рекурсивно для удаления ненормальных выборок до тех пор, пока вы не будете довольны размером выброса с точки зрения стандартного отклонения.

person fodon    schedule 15.08.2012
comment
Я не могу отфильтровать эти данные, это основная проблема. Потому что в будущем нынешние выбросы могут не быть выбросами, поскольку данные каждой выборки передаются населению. В любом случае спасибо за ваш ответ. - person ln2khanal; 15.08.2012
comment
Предполагая, что ваша проблема состоит в том, чтобы исключить выбросы из нормальной модели с потоковыми данными. Вы можете начать фильтрацию после того, как у вас будет значительная статистическая выборка... скажем, 100 точек... назовем ее основной выборкой. Проделайте описанную выше процедуру на ядре после того, как у вас будет 100 очков. Затем вы отслеживаете дальнейшие точки данных и обновляете ядро ​​новыми точками. Предотвратите появление новых данных, которые не соответствуют базовому дистрибутиву. Это также позволит медленно изменять статистические свойства ядра. - person fodon; 16.08.2012
comment
Большой! мы работаем над проектом кластеризации файлов журнала. Сообщения журнала написаны на ломаном английском языке в зависимости от разработчика приложения. Значимые слова могут быть известны как выбросы при обработке существующей библиотеки словарей английского языка. Итак, что мы сделали, так это создали набор слов в качестве словаря для предстоящих сообщений. Приведем пример: message1: 26 сентября ядро ​​моста: устройство usb0 перешло в неразборчивый режим message2: ядро ​​моста 26 сентября: устройство usb0 вышло из неразборчивого режима Вышеупомянутые сообщения помещены в a, потому что оставленное и введенное имеют меньшие значения по сравнению с другими словами. и они кажутся аутсайдерами. - person ln2khanal; 16.08.2012
comment
Если вы принимаете ответ, вы также получаете баллы :) ... Одна компания, которая занимается анализом лог-файлов: splunk.com - person fodon; 16.08.2012
comment
Я ждал лучшего ответа на самом деле! Пожалуйста, напишите лучший ответ, я обязательно приму ваш ответ. - person ln2khanal; 16.08.2012

К сожалению, среднее значение набора данных - это просто среднее значение. Вы уверены, что точка на самом деле выброс? Ваши данные содержат то, что кажется единственным выбросом в отношении кластеризации, но если вы посмотрите на свой график, вы увидите, что эти данные, похоже, имеют линейную зависимость, и действительно ли это выброс?

Если это чтение действительно вызывает у вас проблемы, вы можете полностью удалить его. Помимо этого единственное, что я мог бы предложить вам, это вычислить некое взвешенное среднее, а не истинное среднее http://en.wikipedia.org/wiki/Weighted_mean. Таким образом, вы можете присвоить точке меньший вес при расчете среднего значения (хотя то, как вы выбираете значение веса, — это другой вопрос). Это похоже на взвешенную регрессию, где определенные точки данных имеют меньший вес, связанный с подбором регрессии (возможно, например, из-за ненадежности определенных точек) http://en.wikipedia.org/wiki/Linear_least_squares_(mathematics)#Weighted_linear_least_squares .

Надеюсь, это немного поможет или, по крайней мере, даст вам несколько указаний на другие направления, которые вы можете попробовать использовать.

person mathematician1975    schedule 15.08.2012
comment
Я пытался реализовать взвешенное среднее, но, честно говоря, еще не применил! Но в настоящее время у меня нет таких факторов, которые можно было бы применить в качестве веса. Я очень скоро попробую с вашими предложениями и отвечу, если смогу найти решение с вашей концепцией. Спасибо за ваш ответ. - person ln2khanal; 15.08.2012