Я столкнулся с проблемой с функцией сканирования в sas.
У моего набора данных есть одна переменная, которую нужно разделить на несколько переменных.
Переменная имеет следующую структуру:
4__J04__1__SCH175__BE__compositeur /rangeur__compositeur /
bewerker __ (пробел) __ 1__17__108.03__93.7
Я использую этот код, чтобы разделить его на несколько переменных:
data /*ULB.*/work.smart_BCSS_withNISS_&JJ.&K.;
set work.smart_BCSS_withNISS_&JJ.&K.;
/* Maand splitsen in variablen */
mois=scan(smart,1,"__");
jours=scan(smart,2,"__");
nbjours=scan(smart,3,"__");
refClient=scan(smart,4,"__");
paysPrestation=scan(smart,5,"__");
wordingFR=scan(smart,6,"__");
wordingNL=scan(smart,7,"__");
fonction=scan(smart,8,"__");
ARTISTIQUE2=scan(smart,9,"__");
Art_At_LEAST=scan(smart,10,"__");
totalBrut=scan(smart,11,"__");
totalImposable=scan(smart,12,"__");
run;
В большинстве случаев это работает отлично. Однако иногда 4-я переменная 'refClient' содержит одно подчеркивание, подобное этому:
4__J04__1__LE_46__BE__compositeur /rangeur__compositeur /
bewerker __ (пробел) __ 1__17__108.03__93.7
Каким-то образом функция сканирования также обнаруживает это единственное подчеркивание как разделитель, даже если разделитель является двойным подчеркиванием.
Есть идеи, как избежать этого поведения?