Как создать вложенные строки в SAS?

#sas

#sas

Вопрос:

Я новичок, поэтому моих знаний не хватает. У меня есть набор данных, состоящий из следующих столбцов:

  • Тема
  • Возраст
  • Высота
  • Вес

Я хочу создать таблицу таким образом, чтобы на каждого 1 человека у меня было три строки с именами Возраст, рост, вес.

Я попытался использовать Proc Tabulate :

 proc tabulate data=new;

   class person;

   var NEWCOLUMN;

   table person,NEWCOLUMN;

run;
  

Однако я получаю сообщение об ошибке, потому что новый столбец имеет неправильный тип.

Ответ №1:

Вы можете сводить данные для каждого пользователя и REPORT или TABULATE значения ячеек.

Пример:

 proc transpose data=sashelp.class out=pivoted;
  by name;
  var age height weight;
  where name <= 'C';
run;

ods html file='output.html' style=plateau;

options nodate nonumber nocenter;
title; footnote;

proc report data=pivoted;
  column name _name_ col1;
  define name / ' ' order order=data;
  define _name_ / ' ';
  define col1 / ' ';
run;

proc tabulate data=pivoted;
  class name _name_ / order=data;
  var col1;
  table name*_name_='', col1=''*min='' / nocellmerge;
run;

ods html close;
  

Вывод
введите описание изображения здесь