课程表

SAS 基础

SAS 数据集操作

SAS 数据展示

SAS 基本统计程序

工具箱
速查手册

SAS运算符

当前位置:免费教程 » 大数据/云 » SAS

SAS中的运算符是在数学,逻辑或比较表达式中使用的符号。 这些符号内置到SAS语言中,并且许多运算符可以组合在单个表达式中以给出最终输出。

以下是SAS运算符类别的列表。

  • 算术运算符
  • 逻辑运算符
  • 比较运算符
  • 最小/最大运营商
  • 连接运算符

我们逐一观察。 运算符总是与作为由SAS程序分析的数据的一部分的变量一起使用。

算术运算符

下表介绍了算术运算符的详细信息。 让我们假设分别具有值8和4的两个数据变量V1和V2。

操作者描述
+加成V1 + V2 = 12
-减法V1-V2 = 4
*乘法V1 V2 * 32 =
/V1 / V2 = 2
**V1 V2 ** = 4096

  1. DATA MYDATA1;
  2. input @1 COL1 4.2 @7 COL2 3.1;
  3. Add_result = COL1+COL2;
  4. Sub_result = COL1-COL2;
  5. Mult_result = COL1*COL2;
  6. Div_result = COL1/COL2;
  7. Expo_result = COL1**COL2;
  8. datalines;
  9. 11.21 5.3
  10. 3.11 11
  11. ;
  12. PROC PRINT DATA=MYDATA1;
  13. RUN;

在运行上面的代码,我们可以得到下面的输出。

逻辑运算符

下表描述了逻辑运算符的详细信息。 这些运算符计算表达式的Truth值。 因此,逻辑运算符的结果总是1或0.我们假设两个数据变量V1和V2分别具有值8和4。

操作者描述
AND运算符。 如果两个数据值都为真,则结果为1,否则为0。(V1> 2 V2> 3)给出了0。
|OR运算符。 如果任何一个数据值求值为真,则结果为1,否则为0。(V1> 9 V2> 3)为1。
NOT运算符。 NOT运算符以值为FALSE或缺少值的表达式形式的结果为1,否则为0。NOT(V1> 3)为1。

  1. DATA MYDATA1;
  2. input @1 COL1 5.2 @7 COL2 4.1;
  3. and_=(COL1 > 10 & COL2 > 5 );
  4. or_ = (COL1 > 12 | COL2 > 15 );
  5. not_ = ~( COL2 > 7 );
  6. datalines;
  7. 11.21 5.3
  8. 3.11 11.4
  9. ;
  10. PROC PRINT DATA=MYDATA1;
  11. RUN;

在运行上面的代码,我们可以得到下面的输出。

比较运算符

下表描述了比较运算符的详细信息。 这些运算符比较变量的值,结果是真值,1表示TRUE,0表示False。 让我们假设分别具有值8和4的两个数据变量V1和V2。

操作者描述
=EQUAL运算符。 如果两个数据值相等,则结果为1,否则为0。(V1 = 8)给出1。
^ =NOT EQUAL运算符。 如果两个数据值不相等,则结果为1,否则为0。(V1 ^ = V2)给出1。
<LESS THAN运算符。(V2 <V2)提供1。
<=小于或等于运算符。(V2 <= 4)给出1。
>大于运算符。(V2> V1)给出1。
> =大于或等于运算符。(V2> = V1)给出0。
IN运算符。 如果变量的值等于给定值列表中的任何一个值,则返回1 else否则返回0。V1在(5,7,9,8)给出1。

  1. DATA MYDATA1;
  2. input @1 COL1 5.2 @7 COL2 4.1;
  3. EQ_ = (COL1 = 11.21);
  4. NEQ_= (COL1 ^= 11.21);
  5. GT_ = (COL2 => 8);
  6. LT_ = (COL2 <= 12);
  7. IN_ = COL2 in( 6.2,5.3,12 );
  8. datalines;
  9. 11.21 5.3
  10. 3.11 11.4
  11. ;
  12. PROC PRINT DATA=MYDATA1;
  13. RUN;

在运行上面的代码,我们可以得到下面的输出。

最小/最大运算符

下表描述了最小/最大运算符的详细信息。 这些运算符比较一行中变量的值,并返回行中的值列表中的最小值或最大值。

操作者描述
MINMIN运算符。 它从行中的值列表返回最小值。MIN(45.2,11.6,15.41)给出了11.6
MAXMAX操作符。 它从行中的值列表返回最大值。MAX(45.2,11.6,15.41)给出了45.2

  1. DATA MYDATA1;
  2. input @1 COL1 5.2 @7 COL2 4.1 @12 COL3 6.3;
  3. min_ = MIN(COL1 , COL2 , COL3);
  4. max_ = MAX( COL1, COl2 , COL3);
  5. datalines;
  6. 11.21 5.3 29.012
  7. 3.11 11.4 18.512
  8. ;
  9. PROC PRINT DATA=MYDATA1;
  10. RUN;

在运行上面的代码,我们可以得到下面的输出。

连接运算符

下表描述了Concatenation运算符的详细信息。 此运算符连接两个或多个字符串值。 返回单个字符值。

操作者描述
||连接运算符。 它返回两个或多个值的连接。'Hello'||'World' 输出 Hello World

  1. DATA MYDATA1;
  2. input COL1 $ COL2 $ COL3 $;
  3. concat_ = (COL1 || COL2 || COL3);
  4. datalines;
  5. Tutorial s point
  6. simple easy learning
  7. ;
  8. PROC PRINT DATA=MYDATA1;
  9. RUN;

在运行上面的代码,我们可以得到下面的输出。

运算符优先级

运算符优先级表示复杂表达式中存在的多个运算符的求值顺序。 下表描述了一组运算符中的优先顺序。

顺序符号
第一组右到左** + - NOT MIN MAX
第二组左到右* /
第三组左到右+ -
第四组左到右||
第五组左到右<<= => =>
转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号