按年龄范围

时间:2015-12-07 21:21:02

标签: statistics sas

这是我的数据集

第1栏: 脂质水平

第2栏: 年龄

第3栏: 脂肪含量类别

第4栏: 性别(1 =男性)

   0.73      1      1   1
   0.67      1      2   1
   0.15      1      3   1
   0.86      2      1   1
   0.67      2      2   1
   0.15      2      3   1
   0.94      3      1   1
   0.81      3      2   1
   0.26      3      3   1
   0.23      4      1   2
   1.40      4      1   1
   1.32      4      2   1
   0.15      4      3   1
   1.62      5      1   1
   1.41      5      2   1
   0.78      5      3   1
   9.78      5      1   1

以下是我使用此代码运行的一些不同分析,但我不太清楚SAS为什么不编译。

在做任何其他事情之前,我手动设置了一个永久库。

libname di ‘c:\diet’;
data di.HW3 Data;
infile hw3 data.sas;
input Lipidlevel Age Fatcontent Gender;
run;

我有什么方法可以按如下方式对数据进行分层?我想为Age Group和Fat Content Category变量创建标签和格式。年龄组编码为1至5,对应于:15-24; 25-34; 35-44; 45-54; 55-64。脂肪含量类别编码为1至3,对应于:极低;相当低;适度低。我不知道该怎么做。我能想到的唯一方法是进入原始数据集并手动对其进行排序。

我的意思当然,如果我获得了更大的数据集,那么这样做是不切实际的。我可以在这里得到一些帮助吗?

1 个答案:

答案 0 :(得分:1)

要使用描述性单词显示编码变量,您应该使用格式。首先定义一些格式。

proc format;
  value agegp 1='15-24' 2='25-34' 3='35-44' 4='45-54' 5='55-64';
  value fat   1='extremely low' 2='fairly low' 3='moderately low';
  vale sex '1'='male' ;
run;

然后,您可以将它们附加到变量。您可以在创建数据集的步骤中执行此操作,也可以将它们附加到要使用它们的位置。

proc freq data=di.hw3;
  tables age fatcontent gender;
  format age agegp. fatcontent fat. gender sex. ;
run;