如何解决sas中未声明的数组引用错误?

如何解决sas中未声明的数组引用错误?,sas,Sas,考虑以下代码: data; x=var{89,90,78,98,87,786,69,90,92,88}; y=std{89,90,78,98,87,76,69,90,92,88}; run; 我得到以下错误: 1.数据; 2x=var{89,90,78,98,87786,69,90,92,88}; 错误:引用的未声明数组:var。 错误:变量var尚未声明为数组。 3 y=标准{89,90,78,98,87,76,69,90,92,88}; 错误:引用的未声明数组:std。 错误:变量std尚

考虑以下代码:

data;
x=var{89,90,78,98,87,786,69,90,92,88};
y=std{89,90,78,98,87,76,69,90,92,88};
run;
我得到以下错误:

1.数据; 2x=var{89,90,78,98,87786,69,90,92,88}; 错误:引用的未声明数组:var。 错误:变量var尚未声明为数组。 3 y=标准{89,90,78,98,87,76,69,90,92,88}; 错误:引用的未声明数组:std。 错误:变量std尚未声明为数组。
4次跑步

在SAS中,函数的参数用括号括起来

试一试

错误:出现消息是因为数组订阅引用使用方括号[]、大括号{}或圆括号进行。声明的数组名可以重写函数名,所以要小心

你的源代码

x = var{89,90,78,98,87,786,69,90,92,88};
实际上是告诉SAS要从10维数组中检索值

如果将of添加到参数列表中,函数还可以处理数组

data x;
    * initialize temporary array of 10 values;
    array m(10) _temporary_ (89,90,78,98,87,76,69,90,92,88);

    * measure the array of values;
    x = var (of m(*));
    y = std (of m(*));
run;
data x;
    * initialize temporary array of 10 values;
    array m(10) _temporary_ (89,90,78,98,87,76,69,90,92,88);

    * measure the array of values;
    x = var (of m(*));
    y = std (of m(*));
run;