Проверьте, существует ли определенный диапазон значений в одном наборе данных в другом наборе данных

468
Linebeck

У меня есть два набора данных, 1 и 2, каждый из которых содержит несколько столбцов со значениями. Моя конечная цель - найти все строки в наборе данных 1, которые отличаются и не могут быть найдены в наборе данных 2.

Набор данных 1 (пример):

Name Species Age Donald Dog 3 Petronella Dog 5 

Набор данных 2 (пример):

Name Species Age Donald Dog 3 Anna Dog 5 

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

Возможно, простым вариантом будет добавить четвертый столбец со значением 1 или 0 в зависимости от того, присутствует ли диапазон данных во втором наборе данных.

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

1

2 ответа на вопрос

0
pat2015

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

Образец набора данных 1 находится в ячейках B4: D7, а набор данных 2 - в G4: I7. Теперь в E4 поместите следующую формулу и затем нажмите CTRL + SHIFT + ENTER из панели формул, чтобы создать формулу массива. Формула должна быть заключена в фигурные скобки, чтобы указать, что это любая формула массива.

=IF(ISERROR(MATCH((B4&C4&D4),CONCATENATE($G$4:$G$7,$H$4:$H$7,$I$4:$I$7),0)),"Unique","Duplicate") 

Смотрите скриншот ниже. Это основное использование MATCH, но аргументом является Конкатенированный список строк в массиве.

enter image description here

Спасибо! По какой-то причине у меня проблема с выполнением этой формулы. Я получаю сообщение, в котором спрашивается, пытаюсь ли я выполнить формулу. Linebeck 6 лет назад 0
Пожалуйста, опубликуйте точную формулу, которую вы используете, и желательно снимок экрана с ошибкой. Какую версию Excel вы используете? Что такое разделитель списка в вашем случае это запятая или точка с запятой? pat2015 6 лет назад 0
Нет необходимости =) После перехода на точку с запятой он работает как шарм. Большое спасибо. Единственным недостатком является то, что я бы никогда не смог понять, как достичь этого результата самостоятельно ... Linebeck 6 лет назад 0
0
Super User User

Просто добавьте функцию

=COUNTIF(range,criteria) 

в этом четвертом столбце.


В вашем случае диапазон будет ячейки, содержащие

Donald Anna 

и критерии будут ячейкой для оценки.

Выходное значение равно 1, если есть совпадение, и 0 в противном случае.

Это решение не учитывает возможность того, что может быть более одного Дональда или Анны. Вот почему мне нужна формула, которая учитывает возраст и виды (в этом примере). Linebeck 6 лет назад 0

Похожие вопросы