个性化阅读
专注于IT技术分析

SAS函数用法详细图解

本文概述

在本主题中, 我们将讨论SAS函数。函数使我们能够对SAS的数据和现有数据集进行广泛的操作。

SAS提供了各种内置函数, 可用于数据处理和分析。我们将这些函数用作DATA语句的一部分。

一个函数接受变量作为参数并提供结果, 该结果可以存储到另一个变量中。参数的数量可以根据函数的类型而变化。一些函数接受固定数量的参数, 而一些函数接受零参数

句法:

要实现函数, 请使用以下语法:

FUNCTIONNAME(argument1, argument2, ...argumentn);

其中

FUNCTIONNAME:这是SAS内置函数的名称。

参数:它是提供给函数的值, 以便它可以执行指示性操作。参数可以是变量, 常量表达式或其他函数。

根据数据类型, 函数可分为以下类别:

  • 角色函数
  • 日期和时间函数
  • 数学函数
  • 截断函数
  • 杂项函数

角色函数

字符函数用于操纵字符或字符串值。

以下是用于处理字符串值的各种SAS内置字符函数:

  • UPCASE:它将字符串的所有字母转换为大写。
  • 小写:它将所有的字符串转换成小写。
  • 程序:将字符串的每个首字母转换为大写。
  • REVERSE:用于反转字符串字母。
  • 扫描:它返回特定索引的字符串值。

例:

Data character_functions;

/* Convert the string into lower case */
Lowcse = LOWCASE('HELLO WORLD');

/* Convert the string into upper case */
Upcase = UPCASE('hello world');
/*Capitalizes each word*/
Prop_Case= PROPCASE('hello world');

/* Reverse the string */
Reverse_ = REVERSE('Hello');

/* Return the nth word */
Scan_First_Letter = SCAN('Hello World', 1);
run;

proc print data = character_functions noobs;
run;

在SAS Studio中执行以上代码:

SAS函数用法详细图解

输出

SAS函数用法详细图解

日期和时间函数

日期和时间函数用于处理日期和时间值。

以下是用于操纵日期和时间值的各种SAS内置日期和时间函数:

  • INTCK:用于计算日期之间的年或月的总数。
  • 工作日:用于显示特定日期的工作日。
  • 今日:以SAS日期格式返回当前日期。
  • 时间:以SAS时间格式返回当前时间。

例:

Data date_functions;
INPUT @1 date1 date9. @11 date2 date9.;
format date1 date9.  date2 date9.;
Years = INTCK('YEAR', date1, date2);
months = INTCK('MONTH', date1, date2);
weekday =  WEEKDAY(date1);
today = TODAY();
time = time();
DATALINES;
26NOV2010 18JUL2015
11MAR2009 18JUL2012
;
proc print data = date_functions noobs;
run;

在SAS Studio中执行以上代码:

SAS函数用法详细图解

输出

SAS函数用法详细图解

数学函数

数学函数用于对数值或变量值进行数学计算。

以下是用于对数值执行计算的SAS内置数学函数:

  • MAX:返回变量值中的最大值。
  • MIN:返回变量值中的最小值。
  • MEDIAN:它通过计算所有变量值来返回中值。
  • RANUNI:返回随机值。
  • SQRT:它返回所有变量值之和的平方根值。

例:

Data Mathmatical_functions;
v1=45; v2=54; v3=23; v4=34; v5=67;
max_val = MAX(v1, v2, v3, v4, v5);
min_val = MIN (v1, v2, v3, v4, v5);
med_val = MEDIAN (v1, v2, v3, v4, v5);
rand_val = RANUNI(0);
SR_val= SQRT(sum(v1, v2, v3, v4, v5));
proc print data = Mathmatical_functions noobs;
run;

在SAS Studio中执行以上代码:

SAS函数用法详细图解

输出

SAS函数用法详细图解

截断函数

截断函数用于截断数字值。以下是SAS内置的截断函数, 用于对整数值执行截断。

  • Ceil:返回整数值的最大最近值。
  • Floor:返回整数值的最小最近值。
  • 整数:将数字部分或左侧的数字返回十进制数字。
  • 舍入:返回整数值的最接近值。

例:

Data truncation_functions;

/* Nearest greatest integer */
ceil_ = CEIL(12.85);

/* Nearest smallest integer */
floor_ = FLOOR(12.85);

/* Integer portion of a number */
int_ = INT(23.41);

/* Round off to nearest value */
round_ = ROUND(4526.68);
run;

proc print data = truncation_functions noobs;
run;

在SAS Studio中执行以上代码:

SAS函数用法详细图解

输出

SAS函数用法详细图解

杂项函数

现在, 让我们了解通常使用的SAS的两个其他函数。

  • 邮递区号
  • 死亡

邮递区号

它返回大写的两个字母的州邮政编码(或美国领土的全球GSA地理代码), 对应于其五位数的ZIP州代码。

例:

在这里, 我们采用邮政编码为27511的邮政编码, 该邮政编码对应于美国领土的全球GSA地理代码NC。

Data zipstate_functions;

/* Nearest greatest integer */
state2=zipstate('27511');

proc print data = zipstate_functions noobs;
run;

在SAS Studio中执行以上代码:

SAS函数用法详细图解

输出

SAS函数用法详细图解

死了

它返回摊销参数。

句法:

MORT(a, p, r, n)

其中

a:它是一个数字值, 用于指定初始金额。

p:一个数字值, 指定定期付款。

r:它是一个数值, 用于指定定期利率, 以分数表示。

n:整数值, 指定复利期数。

例:

50, 000卢比的借贷期限为30年, 年利率为10%。它每月复利。因此, 每月付款可以表示为:

Data Mort_functions;

/* Amortization calculation */
payment = mort(50000, . , .10/12, 30*12);

proc print data = Mort_functions noobs;
run;

在SAS Studio中执行以上代码:

SAS函数用法详细图解

输出

SAS函数用法详细图解

赞(0) 打赏
未经允许不得转载:srcmini » SAS函数用法详细图解
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏