Я бы сделал это с COUNTIFS
.
Сначала создайте в таблице заголовки строк и столбцов, что довольно просто, особенно если переменные пронумерованы, как в вашем примере (Boolean1, Boolean2, ...), потому что вы просто используете автозаполнение. В противном случае вам нужно выполнить некоторые манипуляции / извлечение строк, чтобы получить хорошую таблицу:
| Boolean2 Boolean2 | Boolean3 Boolean3 | | No Yes | No Yes | -----------------------------------------------------------------------| Boolean1 No | X | | Boolean1 Yes | | | -----------------------------------------------------------------------| Boolean4 No | | | Boolean4 Yes | | |
Вы также должны определить свой набор данных как таблицу Excel (Ctrl-L) со строками заголовка (я использовал Table1 в качестве имени по умолчанию).
И в X (предполагая, что это ячейка C3) вы вводите формулу:
=COUNTIFS(INDIRECT("Table1["& C$1 &"]");C$2;(INDIRECT("Table1["& $A3 &"]"));$B3)
которую вы, конечно, можете автоматически заполнить по всей области.
Table1[Boolean2]
Относится к этому столбцу в наборе данных ( INDIRECT
просто избегает, что вы должны жёстек ссылки столбца, и вы можете использовать значение в ячейке C1
). Таким образом, общая формула подсчитывает количество случаев, где Table1[Boolean2]
«Нет», а Table1[Boolean1]
также «Нет» (используя два условия в COUNTIFS
).
Выходные данные будут полностью симметричными, поэтому в зависимости от того, как вы хотите рассчитать индекс Жакара, вы должны брать только выход ниже диагонали (отбрасывая дубликаты (N, M) и (M, N) и тривиальное (N, N) те). Если вы хотите получить чистый вывод сразу, вы, конечно, можете добавить дополнительное, IF
чтобы вычислить только число, когда индекс переменной в строке больше, чем индекс переменной в столбце. Возможно, вы также можете сделать это в той же формуле, но для наглядности я бы просто добавил дополнительную строку и столбец с порядковым номером переменной (от 1 до 29) и протестировал их.