SAS中的数组用于使用索引值存储和检索一系列值。 索引表示保留存储区中的位置。
在SAS中,使用以下语法声明数组:
ARRAY ARRAY-NAME(SUBSCRIPT) ($) VARIABLE-LIST ARRAY-VALUES
在上面的语法中:
数组可以使用上述语法以多种方式声明。 下面是示例。
# Declare an array of length 5 named AGE with values. ARRAY AGE[5] (12 18 5 62 44); # Declare an array of length 8 named COUNTRIES with values starting at index 0. ARRAY COUNTRIES(0:8) A B C D E F G H I; # Declare an array of length 5 named QUESTS which contain character values. ARRAY QUESTS(1:5) $ Q1-Q5; # Declare an array of required length as per the number of values supplied. ARRAY ANSWER(*) A1-A100;
存储在数组中的值可以通过使用如下所示的打印过程访问。 在使用上述方法之一声明之后,使用DATALINES语句提供数据。
DATA array_example; INPUT a1 $ a2 $ a3 $ a4 $ a5 $; ARRAY colours(5) $ a1-a5; mix = a1||'+'||a2; DATALINES; yello pink orange green blue ; RUN; PROC PRINT DATA=array_example; RUN;
当我们执行上面的代码,它会产生以下结果:
当分析数组形式的数组以对数组的整个行执行计算时,使用OF运算符。 在下面的示例中,我们应用每行中的值的和和均值。
DATA array_example_OF; INPUT A1 A2 A3 A4; ARRAY A(4) A1-A4; A_SUM=SUM(OF A(*)); A_MEAN=MEAN(OF A(*)); A_MIN=MIN(OF A(*)); DATALINES; 21 4 52 11 96 25 42 6 ; RUN; PROC PRINT DATA=array_example_OF; RUN;
当我们执行上面的代码,它会产生以下结果:
也可以使用IN运算符访问数组中的值,该运算符检查数组行中是否存在值。 在下面的例子中,我们检查数据中颜色“黄色”的可用性。 此值区分大小写。
DATA array_in_example; INPUT A1 $ A2 $ A3 $ A4 $; ARRAY COLOURS(4) A1-A4; IF 'yellow' IN COLOURS THEN available='Yes';ELSE available='No'; DATALINES; Orange pink violet yellow ; RUN; PROC PRINT DATA=array_in_example; RUN;
当我们执行上面的代码,它会产生以下结果:
当前文章:创新互联SAS教程:SAS数组
转载源于:http://www.mswzjz.cn/qtweb/news19/420619.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能