Ищем и удаляем дубликаты наблюдений
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | * Ищем и удаляем дубликаты наблюдений. * Автор: rlevesque@videotron.ca. * Создадим пример данных. DATA LIST LIST /id(F8) var1(F8) var2(F8). BEGIN DATA. 2 1 1 2 1 1 5 3 6 4 4 7 3 4 8 3 4 8 3 4 8 2 3 1 END DATA. SORT CASES BY id. * Найдём продублированные записи (в переменной n будет содержаться их количество). AGGREGATE OUTFILE='temp.sav' /BREAK=ALL /N=n. * Добавим число дубликатов к каждой записи исходного файла (если надо). MATCH FILES /FILE=* /TABLE='temp.sav' /BY id var1 var2. EXECUTE. * А если требуется просто исключить дубликаты, выполняем следующие команды (начиная с исходных данных). SORT CASES BY id var1 var2. MATCH FILES /FILE=* /FIRST = top /BY id var1 var2. SELECT IF top. EXECUTE. |