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
33
34
35
36
37
38
39
40
41
42
43
44
* Тема: заменить персональную информацию (например, ИНН) на условные уникальные коды.
* Ключевые слова: замена, слияние, защищаемая, личная, персональная информация, коды.
* Опубликован: 16.06.2008.
* Автор: Raynald Levesque.
* Перевод: А. Балабанов.

* (Вопрос) Может ли кто-то подсказать способ заменить персональные номера
  (ИНН, социальная страховка и проч.) индивидов в файле данных условными кодами? 
  Имеется файл соответствия личных номеров и условных кодов, и файл данных, где каждая 
  строчка начинается с личного номера индивида.

* (Ответ) Размещён в SPSSX-L, автор: Raynald Levesque, 23.08.2002.

* Файл соответствия кодов идентификаторам newid.
DATA LIST LIST /ssn newid.
BEGIN DATA
123456 100
222222 200
150150 300
END DATA.
LIST.

SORT CASES BY ssn.
SAVE OUTFILE='c:\\temp\\keys.sav'.

* Файл, в котором необходимо заменить персональные идентификаторы на newid.
DATA LIST LIST /ssn var1.
BEGIN DATA
123456 27
222222 32
222222 49
222222 49
150150 57
150150 67
END DATA.
LIST.

SORT CASES BY ssn.
MATCH FILES FILE=* 
	/TABLE='c:\\temp\\keys.sav'
	/BY=ssn /DROP=ssn.

* Перемещаем переменную newid в начало файла.
ADD FILES FILE=* /KEEP=newid ALL.