SAS使用数据集创建其他数据集
我应该创建一个汇总数据集,包含按性别和群体细分的平均值、中位数和标准差(使用类别声明)。使用此摘要数据集,创建四个其他数据集(在一个数据步骤中),如下所示: (1) 中庸 (2) 按性别分列的统计数据 (3) 按组分列的统计数据 (4) 按性别和群体分列的统计数据 给出了使用CHARTYPE选项的提示 我提供了我尝试过的解决方案,但我不认为我是按照要求的方式做的SAS使用数据集创建其他数据集,sas,Sas,我应该创建一个汇总数据集,包含按性别和群体细分的平均值、中位数和标准差(使用类别声明)。使用此摘要数据集,创建四个其他数据集(在一个数据步骤中),如下所示: (1) 中庸 (2) 按性别分列的统计数据 (3) 按组分列的统计数据 (4) 按性别和群体分列的统计数据 给出了使用CHARTYPE选项的提示 我提供了我尝试过的解决方案,但我不认为我是按照要求的方式做的 DATA CLINICAL; *Use LENGTH statement to control the order of
DATA CLINICAL;
*Use LENGTH statement to control the order of
variables in the data set;
LENGTH PATIENT VISIT DATE_VISIT 8;
RETAIN DATE_VISIT WEIGHT;
DO PATIENT = 1 TO 25;
IF RANUNI(135) LT .5 THEN GENDER = 'Female';
ELSE GENDER = 'Male';
X = RANUNI(135);
IF X LT .33 THEN GROUP = 'A';
ELSE IF X LT .66 THEN GROUP = 'B';
ELSE GROUP = 'C';
DO VISIT = 1 TO INT(RANUNI(135)*5);
IF VISIT = 1 THEN DO;
DATE_VISIT = INT(RANUNI(135)*100) + 15800;
WEIGHT = INT(RANNOR(135)*10 + 150);
END;
ELSE DO;
DATE_VISIT = DATE_VISIT + VISIT*(10 + INT(RANUNI(135)*50));
WEIGHT = WEIGHT + INT(RANNOR(135)*10);
END;
OUTPUT;
IF RANUNI(135) LT .2 THEN LEAVE;
END;
END;
DROP X;
FORMAT DATE_VISIT DATE9.;
RUN;
PROC MEANS DATA=CLINICAL;
CLASS GENDER GROUP;
OUTPUT OUT=SUMMARY
MEAN=
MEDIAN=
STDDEV= / AUTONAME;
RUN;
不,他们要求你做的是:
PROC MEANS
中的OUTPUT
语句创建摘要数据集。在PROC MEANS
中选择适当的类型
和类
值,以便在输出上显示所有四组数据data
语句上有四个数据集名称的单个数据步骤,有选择地将这些行输出到正确的数据集。您可以使用\u TYPE.
变量来确定行将输出到哪个数据集CHARTYPES
仅仅意味着您的\u TYPE
变量将看起来像1001
,而不是9
(基本上是二进制表示)1001
指示使用哪个类变量(第一个和第四个)创建该分支。(如果只有两个类变量,则可能有值00
,01
,10
,11
)。对于不习惯用二进制思考的非程序员来说,这有时更容易(这些值将是十进制的0
、1
、2
、和3
,而不使用图表类型
,因此您可能更难判断哪个变量对应哪个变量).这是一个关于如何提问家庭作业类问题的极好示例:有完整的问题,并有一个包含示例数据的完整尝试解决方案。作为提醒,在家庭作业类问题上,重点是教如何而不是什么,所以答案应该指向提问者的答案方向,而不是直接提供答案。谢谢!如果我做得正确,程序会比现在短,对吗?代码行不会短;假设您的第一个数据步骤(创建代码)需要完整的长度,我不知道这一点或那一点,proc意味着
部分会短一些,但数据步骤会长几行。但更重要的是,您只需点击较大的数据集一次,而不是四次,这将加快程序的速度(如果该数据集实际上非常大的话)创新;如果TYPE='1111',则输出GRAND和OUTPUT GENDER以及OUTPUT GROUP和OUTPUT GENDERGROUP;跑我不确定data语句是如何工作的。我是否列出了4个数据集名称?我不知道该怎么打字。你能给我举个例子吗?除了和
位之外,你是对的。您需要根据类型选择要输出到的对象;每个\u类型
值都会进入不同的数据集。这应该包含在您的SAS文本中,如果没有,请在google上四处查看-它的内容相当丰富,例如在“拆分数据集”下。无法理解如何在评论中发布代码,对此表示抱歉。好吧,我会调查的。