我有两个变量'shift‘和'scheduled’的数据集。' shift‘变量包含许多不同的时间值记录,例如“EdA7a-4p”;scheduled变量包含排定班次的天数,例如,单元格中的"3“表示3天。
我创建了以下代码,以了解在给定时间内有多少班次。
data ED_A_7a_4p;
set schedule schedule10;
if shift = 'ED A 7a-4p' and Scheduled = '3' then SevenToEightAM = ???;
if shift = 'ED A 7a-4p' and Scheduled = '7' then EightToNineAM = ???;
run;
我希望创建的变量,例如'SevenToEightAM',等于"scheduled“变量列中的数字。所以如果'scheduled‘是3,我希望'SevenToEightAM’等于3。
问题是'scheduled‘是完全随机的,我不能自动编码它,所以我希望在SAS中有一个条件选项,允许我对我的数据集中的任何"scheduled“进行'SevenToEightAM’。
发布于 2019-04-24 03:31:40
您可能需要一个TABULATE
报告,而不是创建新的变量。尝试:
data have;
set original;
scheduled_num = input(scheduled, best12.);
run;
Proc TABULATE data=have;
class shift;
var scheduled_num;
table shift, scheduled*sum;
https://stackoverflow.com/questions/55817658
复制相似问题