Как определить две строки с одинаковыми символами в первом потоке

Я хочу создать индикаторную переменную same_first_two_nearby. Это указывает на то, что первые два символа наблюдений равны ближайшим наблюдениям. Пытаюсь использовать «метод дублирования», но у меня ничего не получается. Потому что метод может только «удалить» дубликат, но не сохранить.

PROC SORT data=temp NODUPKEY;
 BY customer_IN;
RUN; 

Пример моих данных следующий.

data temp;
input  customer_IN $ 1-8 ;
cards;
ADJOHN. 
ADMARY.  
ADjerry.  
BWABBY.   
CFLUCY.   
CFLINDA.   
EFLAGNA.  
KTPAKAO.   
KTWANDA.    
;
run;
proc print data=temp;run;

Я хочу получить следующие результаты.

customer_IN  same_first_two_nearby
    ADJOHN.                      1
    ADMARY.                      1 
    ADjerry.                     1 
    BWABBY.                      0 
    CFLUCY.                      1 
    CFLINDA.                     1 
    EFLAGNA.                     0 
    KTPAKAO.                     1 
    KTWANDA.                     1 

Заранее спасибо.


person Terence Tien    schedule 19.04.2017    source источник
comment
вы хотите проверить только наблюдение рядом с текущим наблюдением. или вы хотите проверить все наблюдения на сходство в первых двух буквах   -  person Sivaprasath Vadivel    schedule 19.04.2017
comment
Я хочу только наблюдение рядом с текущим наблюдением. Сначала я их сортирую.   -  person Terence Tien    schedule 19.04.2017


Ответы (1)


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

data temp;
input  customer_IN $ 1-8 initials $ 1-2;
cards;
ADJOHN. 
ADMARY.  
ADjerry.  
BWABBY.   
CFLUCY.   
CFLINDA.   
EFLAGNA.  
KTPAKAO.   
KTWANDA.    
;
run;

data want;
set temp;
by initials;
same_first_two_nearby = not(first.initials and last.initials);
run;
person user667489    schedule 19.04.2017
comment
Спасибо @ user667489! Это большая помощь. Я многому у тебя научился. - person Terence Tien; 19.04.2017
comment
Немного меняю. Я использую substr (customer_IN, 1,2) в качестве ваших инициалов .; - person Terence Tien; 19.04.2017