MATCH () возвращает только одно из двух значений в Excel - PullRequest
1 голос
/ 04 февраля 2011

Я использую Excel для сопоставления показателей склонности (я знаю, что это не лучший инструмент для этого, но это задание).

Я использую MATCH(), чтобы найти запись в шкафу colO (это буква O) и запись в colM. Мой вызов работает должным образом в libreoffice, но не в Excel. Все значения в colO и colM являются вероятностями (то есть между 0 и 1 включительно).

=MATCH(M11, O$11:O$60, 1)

Если значение в colM равно нулю, то MATCH() возвращает 28, что также равно нулю в colO. Если значение в colM больше нуля, то MATCH() возвращает 50, что является наименьшим ненулевым значением в colO.

Есть идеи? Я обычно не использую Excel. Ох, и вот верхняя часть этих столбцов:

propensity  health w/o vaccine  propensity  match
0                  2           0.393115219   28
0                  1           0.280598404   28
0.747918388        0           0             50
0.843491818        0           0             50
0.707782271        0           0             50
0.829627573        0           0             50
0.515298454        0           0             50
0.464636469        0           0             50
0.705333684        0           0             50
0                  3           0.641132271   28
0                  4           0.366445099   28
0.590387706        0           0             50
0.859441341        0           0             50
0                  2           0.304260844   28
0                  3           0.725971617   28

1 Ответ

1 голос
/ 04 февраля 2011

Когда вы используете 1 или -1 (не ноль) в качестве третьего аргумента MATCH, столбец O должен быть отсортирован.Если вы хотите найти самое близкое совпадение в несортированном списке, вам нужно использовать формулу массива

=MATCH(MIN(ABS(M11-$O$11:$O$25)),ABS(M11-$O$11:$O$25),FALSE)

Введите формулу массива с помощью Control + Shift + Enter, а не просто введите.Excel будет заключать фигурные скобки вокруг формулы.

Первый аргумент определяет минимальную разницу между M11 и каждым значением в столбце O. Второй аргумент представляет собой полный список всех различий.MATCH сопоставляет это минимальное значение с полным списком и возвращает строку, в которой оно найдено.Я получаю

3
3
15
15
15
15
1
1
15
3
3
10
15
3
3

Что на первый взгляд выглядит правильно.Измените $ O $ 25 в формуле на конец ваших данных в столбце O.

...