本文概述
- 关于运算符|在运算符中
- 数组声明
- 访问数组值
- OF运算符
- IN运算符
它可以存储数据集合, 但通常用于存储相同数据类型的变量集合。
数组使用索引存储元素。它减少了代码的行数。
在SAS中, 数组执行与上述相同的任务。这意味着它用于通过使用索引值来存储和检索一系列值。索引表示元素在保留存储区中的位置。
句法:
ARRAY ARRAY_NAME(SUBSCRIPT) ($) VARIABLE-LIST ARRAY-VALUES
其中
- ARRAY:这是用于声明数组的关键字。
- ARRAY_NAME:这是数组的名称。它遵循与变量相同的名称约定。
- SUBSCRIPT:这是我们存储在数组中的值的数量。
- ($):仅在数组存储字符值时使用。
- VARIABLE-LIST:这是一个可选的变量列表, 这些变量是Array值的占位符。
- 数组值:这些是将存储在数组中的实际值。我们可以声明这些值, 也可以从文件或数据行中读取。
- 名称NUMBER声明一个数组。它的长度是5, 其值为42、88、67、62、44。
ARRAYNUMBER[5] (42 88 67 62 44);
- 名称ALPHABET声明一个数组。它的长度为8, 其值分别为A, B, C, D, E, F, G, H, 并且从索引0开始。
ARRAYALPHABET(0:8) A B C D E F G H ;
- 名称SEARCH声明一个长度为5的数组, 其中包含的值是字符。
ARRAY SEARCH(1:5) $ Q1-Q5;
- 名称FEEDBACK声明一个数组。在此数组中, 我们可以根据需要获取长度。
ARRAYFEEDBACK(*) A1-A100;
访问数组值 声明之后, 我们可以使用DATALINES语句在Array中提供数据值, 并且可以使用PRINT过程访问这些存储的值。
在下面的示例中, 我们将存储和访问Array的值。
DATA Array;
INPUT a1 $ a2 $ a3 $ a4 $ a5 $;
ARRAY animals(5) $ a1-a5;
DATALINES;
Lion Elephant Horse Deer Fox
;
RUN;
PROC PRINT DATA = http://www.srcmini.com/Array;
RUN;
在SAS Studio中执行以上代码:
文章图片
输出
文章图片
正如我们在输出中看到的, 数组的所有值均已存储和访问。
连接数组的多个值
我们可以通过声明一个新变量来连接Array的多个值。
例:
DATA Array;
INPUT a1 $ a2 $ a3 $ a4 $ a5 $;
ARRAY animals(5) $ a1-a5;
mix = a1||'+'||a2;
DATALINES;
Lion Elephant Horse Deer Fox
;
RUN;
PROC PRINT DATA = http://www.srcmini.com/Array;
RUN;
Using the OF operator
文章图片
输出
文章图片
正如我们在输出中看到的, 两个值, 即a1和a2, 都已串联到变量mix中。
OF运算符 在分析数组的数据格式以计算数组的整个行时, 将使用OF运算符。在下面的示例中, 我们将计算每行中值的总和和均值。
DATA Array_OF;
INPUT A1 A2 A3 A4;
ARRAY A(4) A1-A4;
SUM = SUM(OF A(*));
MEAN = MEAN(OF A(*));
MIN = MIN(OF A(*));
DATALINES;
22 4 50 12
43 55 32 19
;
RUN;
PROC PRINT DATA = http://www.srcmini.com/Array_OF;
RUN;
在SAS Studio中执行以上代码:
文章图片
输出
文章图片
正如我们在输出中看到的, 已经计算了整行。
IN运算符 在数组中, 我们可以使用IN运算符访问特定值。 IN Operator会检查数组行中是否存在特定值的状态。在下面的示例中, 我们将检查数据集中动物” 老虎” 的可用性。此值区分大小写。
DATA Array_in;
INPUT A1 $ A2 $ A3 $ A4 $;
ARRAY animals(4) A1-A4;
IF 'Lion' IN COLOURS THEN available = 'Yes';
ELSE available = 'No';
DATALINES;
Lion Elephant Horse Deer Fox
;
RUN;
PROC PRINT DATA = http://www.srcmini.com/Array_in;
RUN;
在SAS Studio中执行以上代码:
文章图片
输出
文章图片
从输出中可以看到, Lion存在于数据集中, 这就是为什么它在” 可用” 列中显示” 是” 的原因。
推荐阅读
- 什么是SAS算术平均值(详细图解)
- SAS-SQL详细操作图解
- SAS数据集的子设置详细图解
- SAS用法图解(无需下载和安装)
- Appium自动化测试之键盘操作pressKeyCode()方法(Android特有)
- Windows系统下使用Charles抓取Android模拟器http请求
- Android 资源目录
- Android Zygote进程
- excel导出报错(The supplied data appears to be in the Office 2007+ XML.)