SAS中的长度声明?

时间:2016-01-16 16:17:43

标签: sas

以下是一个简单的SAS程序:

libname learn = 'c:\books\learning';
data learn.test_scores;
  length ID $ 3 Name $ 15;
  input ID $ Score1-Score3;
  label ID ='student ID';
        Score1='Math Score';
        Score2='Science Score';
        Score3='English Score';
datalines;
1 90 95 98
2 78 77 75
3 88 91 92
;

我的问题是长度陈述。那么,Name $ 15究竟是什么意思呢?变量名称在哪里?非常感谢。

2 个答案:

答案 0 :(得分:0)

您拥有的长度语句将定义两个变量。 ID定义为一个字符变量,其空间最多为3个字符(字节)。并且NAME被定义为具有最多15个字符的空间的字符。

您的程序中没有任何地方为变量NAME分配任何值,因此对于所有观察,它都是空白的。

请注意,LABEL语句中的分号也太多了。这将导致它的最后三行被解释为尝试将字符常量分配给数值变量SCORE1,SCORE2和SCORE3。这将导致错误消息,并且这些变量的值都将丢失。

答案 1 :(得分:0)

Name是一个变量名称,它是一种字符类型,最大长度为12个字节。 (在PDV中,Name变量总是占用12个字节,而与name变量中的字符数无关)