Плотность числового ряда - страница 2

 
Dmitry Fedoseev:
Наиболее длинный участок, когда исходный ряд ниже среднего.

Да, если одно из чисел существенно больше, то результатом решения будет только его исключение - это конечно не очень хорошо.

Есть идеи, как купировать этот эффект? 

 
-Aleks-:

Да, если одно из чисел существенно больше, то результатом решения будет только его исключение - это конечно не очень хорошо.

Есть идеи, как купировать этот эффект? 

Вообще-то я только ваш алгоритм изложил, в краткой форме без лишнего.

Можно игнорировать короткие выходы выше средней. Например, если данные держаться выше средней 1-3 бар, считаем, что они ниже средней. 

 
-Aleks-:

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

Отвечая на вопрос "Есть еще вопрос: сколько раз считать один и тот же уровень, если он в истории встречался несколько раз.", если я правильно понял, то вопрос в том, как быть если в числовом ряде цифры повторяются - на первый взгляд дельта между ними будет ноль, что является признаком высокой плотности и не должно разрушить вышеописанный алгоритм.

Полужирный шрифт мой.

Извините, принял всеръез то, что Вы написали ранее: "Жду критических замечаний и идей." Главное замечание, как я уже говорил, в том, что задача не поставлена. Делать вычисления неизвестно чего не умею.

Главный вопрос: "Что должно быть результатом?", и ответ на него нужно сформулировать так, чтобы разные, незнакомые люди, из одинаковых исходных данных получали одинаковые результаты, пользуясь только этим ответом. Это основа автоматизации работ, хоть в Эксел, хоть в чем.

Что такое "плотность", "близость" в подмножестве внутри числовой последовательности, - кто это скажет вместо автора?

 
Dmitry Fedoseev:

Вообще-то я только ваш алгоритм изложил, в краткой форме без лишнего.

Можно игнорировать короткие выходы выше средней. Например, если данные держаться выше средней 1-3 бар, считаем, что они ниже средней. 

Хочу Вас понять, вот есть числа

№ П./П.ЧислоДельтаСр. значение числаСр. значение дельты
1 1   150,9 111
2 4 3    
3 5 1    
4 20 15    
5 21 1    
6 28 7    
7 30 2    
8 100 70    
9 300 200    
10 1000 700    


Очевидно, что цифры по порядку 8 - 10 далеки друг от друга и от 7, как эти цифры отфильтровать? 
 
Vladimir:

Полужирный шрифт мой.

Извините, принял всеръез то, что Вы написали ранее: "Жду критических замечаний и идей." Главное замечание, как я уже говорил, в том, что задача не поставлена. Делать вычисления неизвестно чего не умею.

Как это задание не поставлено??? Тогда каким образом Вам его удалось обсуждать?

Еще раз - нужен алгоритм для определения группы чисел в числовом ряде наиболее близко расположенных друг к другу относительно всего числового ряда.

 
-Aleks-:

Как это задание не поставлено??? Тогда каким образом Вам его удалось обсуждать?

Еще раз - нужен алгоритм для определения группы чисел в числовом ряде наиболее близко расположенных друг к другу относительно всего числового ряда.

Обсуждать несложно даже "пойди туда, не знаю куда, принеси то, не знаю что", это тема очень развита в сказках.

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

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

Исходные данные же есть - это числовой ряд, а группа чисел - последовательность в этом числовом ряду, которая отвечает признаку "близко расположены друг к другу" и ограничивается пределами числового ряда. А вот числа для определения близости расположения нет, его нужно найти. Числа, пока, учитываем только положительные.

Если не ответил на Ваш вопрос, то уточните его - честно пытаюсь понять, что я не так объяснил. 

 
Вспомнил один способ кластеризации. Как-то так: в множестве выделяются группы элементов (кластеры), такие, что максимальное расстояние между элементами одного кластера меньше минимального расстояния от любого элемента этого кластера до элемента, не входящего в этот кластер. Расстояние можно брать обычное, модуль разности вещественных чисел. Конечно, такой кластер будет не обязательно один. Может быть, Вам и не нужна ровно одна группа, может, их стоит сравнивать друг с другом еще и по другим признакам. Например, среднее время возникновения уровня в группе.
 
-Aleks-:

Исходные данные же есть - это числовой ряд, а группа чисел - последовательность в этом числовом ряду, которая отвечает признаку "близко расположены друг к другу" и ограничивается пределами числового ряда. А вот числа для определения близости расположения нет, его нужно найти. Числа, пока, учитываем только положительные.

Если не ответил на Ваш вопрос, то уточните его - честно пытаюсь понять, что я не так объяснил. 

Расстояние между двумя точками на вещественной оси мы все измеряем как модуль их разности. В математике это принято называть метрикой. Как измерять расстояние на плоскости между  точками, парами чисел, каждое из которых вещественное? Опять у нас есть готовое привычное решение - евклидово расстояние, корень квадратный из суммы квадратов покоординатных разностей. А у математиков есть и другие метрики на плоскости, например, наибольший модуль из двух разностей, сумма модулей разностей (http://ad.cctpu.edu.ru/Math_method/math/45.htm). И это всего лишь в случае пар чисел. Только двух чисел, и всегда двух. А Вам нужно ввести меру близости в гораздо более сложной ситуации. В группе не два числа, и в разных группах их разное число.

Есть в математике метрики, измеряющие расстояние между двумя функциями. Но вновь, всегда между двумя. Опять Вам не подходит, у вас группа.

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

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

 
-Aleks-:

Хочу Вас понять, вот есть числа

№ П./П.ЧислоДельтаСр. значение числаСр. значение дельты
1 1   150,9 111
2 4 3    
3 5 1    
4 20 15    
5 21 1    
6 28 7    
7 30 2    
8 100 70    
9 300 200    
10 1000 700    


Очевидно, что цифры по порядку 8 - 10 далеки друг от друга и от 7, как эти цифры отфильтровать? 
Не написал - сначала разницы посчитать. Потом все остальное.