|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
Excel. Помогите разобраться в формуле. Для задачи вида: есть ряд чисел неупорядоченный в колонке A (например 2 5 3 8 3 7) нужно присвоить ранг(место) без пропусков, от меньшего к большему, повторяющимся числам - одинаковое место. Т.е. если упорядочить исходный 2 3 3 5 8 7, то места соотв-но будут у них: 1 2 2 3 4 5 (для 2ки -> 1, для 3ки -> 2, для 5ки->3 ...) На просторах найдена формула, как это сделать. НЕ как формула массива, а обычная. =СЧЁТ(1/ЧАСТОТА((A1>=A$1:A$6)*A$1:A$6;A$1:A$6)) Она вроде работает, но не хватает мозгов или опыта с excel-ем понять, как, что за логика заложена. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2017, 15:27 |
|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
опечатался в исходном, правильно так : "Т.е. если упорядочить исходный как 2 3 3 5 7 8 " ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2017, 15:30 |
|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
=РАНГ() ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2017, 10:20 |
|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
PlanB=РАНГ() ранг() будет с пропусками, т.е. места он выдаст не подряд: в указанном примере выдаст для 2ки->1, для 3ки ->2 (дважды), а вот 3е место никому не даст, для 5ки уже даст не 3е, а 4е место. А надо подряд, что указанная хитроумная конструкция и делает. Как в отдельности работает сами по себе обычно функции СЧЕТ, ЧАСТОТА - понимаю, а вот в этой конструкции - не понимаю. Какой-то искусственный разум это придумал ) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2017, 10:47 |
|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
ну чтож, видать не только моего iq не хватает )) хотя основная логика конечно понятна, чуть додумать только Пригодится может кому формула ) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 09:17 |
|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
Смотрите этапы вычисления формулы в файле. Часть (A1>=A$1:A$6)*A$1:A$6 довольно очевидна - замена на 0 чисел, которые больше того, для которого определяется ранг. Кол-во чисел, отличных от 0, равно искомому рангу, если убрать повторы . Определением повторов и занимается функция ЧАСТОТА. Если массив данных совпадает с массивом интервалов И все значения различны, функция возвращает массив вида {1:1:1:...:1:0}, т.е. каждое число попадает в "свой" интервал, кол-во единиц совпадает с кол-вом чисел. Если в массиве есть один повтор, результат имеет вид {1:2:1:...:0:1:0}, потому что оба одинаковых числа попали в "свой" интервал, а следующий интервал имеет нулевой размер, в него ничего не может попасть. То есть кол-во чисел, отличных от 0, уменьшилось на 1. Если будет два повтора, кол-во не-нулей уменьшится еще на 1, и т.д. Таким образом, кол-во не-нулей в массиве, возвращаемом функцией ЧАСТОТА, равно искомому рангу. Подсчет не-нулей в массиве производит функция СЧЁТ(1/{массив}) - при делении 0 превращается в значение ошибки и не входит в счет. Кстати, формула некорректно работает с отрицательными числами. Искусственный разум , который придумывает такие формулы, сосредоточен в основном тут: http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=list&FID=1 ... |
|||
:
Нравится:
Не нравится:
|
|||
31.12.2017, 02:01 |
|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
Здравствуйте, подскажите, пожалуйста, как нужно изменить эту формулу =СЧЁТ(1/ЧАСТОТА((A1>=A$1:A$6)*A$1:A$6;A$1:A$6)), чтобы ранжирование было от большего к меньшему, т.е. наибольшее число имело порядковый номер 1 и т.д.?? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2018, 18:30 |
|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
pobnn, так элементарно же - просто знак поменять: Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2018, 19:39 |
|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
The_Prist, я тоже так предположила, но практика показала, что результат не верный((( ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2018, 19:47 |
|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
The_Prist, косякнул. Знак равно не убрал: Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2018, 19:52 |
|
Не могу понять, как работает готовая формула ранжирования
|
|||
---|---|---|---|
#18+
The_Prist, не подумала об этом. Работаем, спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2018, 20:08 |
|
|
start [/forum/topic.php?fid=61&tid=2172168]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
49ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 279ms |
total: | 420ms |
0 / 0 |