SAS - значения заполнения для каждой группы

natnay спросил: 12 мая 2018 в 03:49 в: sas

У меня есть набор данных, который выглядит так:

Stop    Group
JFK     A
JFK     B
JFK     C
AMS     A
AMS     B
AMS     C
LHR     A
SFO     B

Я пытаюсь создать новый набор данных, где каждый Stop будет иметь значения A , B и C. Например, JFK и AMS уже имеют AC, поэтому никаких изменений не требуется. LHR требует добавления B и C, а SFO - добавление A и C. Выходной набор данных должен выглядеть следующим образом:

JFK A
JFK B
JKF C
AMS A
AMS B
AMS C
LHR A
LHR B
LHR C
SFO A
SFO B
SFO C

Любые идеи? Спасибо!


1 ответ

Есть решение
John Doe ответил: 12 мая 2018 в 05:01

Это простое быстрое решение:

PROC SQL noprint;
  select distinct quote(stop) into :stop separated by ', '
  from have;
  select distinct quote(group) into :group separated by ', '
  from have;
quit;data want;
  length stop $4 Group $2;
  do stop=&stop.;
    do Group=&group.;
      output;
    end;
  end;
run;
natnay ответил: 14 мая 2018 в 06:15
Это сделал трюк! Спасибо за вашу помощь.