Вот мой набор данных:
Имя Марк Математика Математика2 Математика3
-------------------------------------
Justin AA1 1 0 1
Justin BB1 1 1 1
Justin BA1 0 1 0
Justin BC2 0 0 1
и вот код SAS для его создания
DATA Student1;
INPUT Name $ Mark $ Math1 Math2 Math3;
DATALINES;
Justin AA1 1 0 1
Justin BB1 1 1 1
Justin BA1 0 1 0
Justin BC2 0 0 1
;
Я хотел бы оценить Math1 и вывести отметку рядом с ним, если встречается 1, однако, поскольку эта позиция использовалась в Math1, она не может быть снова использована в Math2, т. Е. Вывод Джастина равен AA1 для Math1, BB1 для Math2 потому что именно там находится первая в столбце) и BC2 для Math3, потому что, хотя у нас есть 1 в одной строке с AA1 и BB1, эти две метки уже использовались в var Math1 и Math2.
Вот так должен выглядеть выходной набор данных
data Student2;
input name $ Math1 $ Math2 $ Math3 $;
datalines;
Justin AA1 BB1 BC2
;
Могу ли я сделать это с помощью массивов?