新彩天欢迎您!
幻海优品

SAS - 功能

SAS具有多种内置功能,可帮助分析和处理数据.这些函数用作DATA语句的一部分.它们将数据变量作为参数并返回存储在另一个变量中的结果.根据函数的类型,它所采用的参数数量可能会有所不同.有些函数接受零参数,而其他一些
接受固定数量的变量.以下是SAS提供的函数类型列表.

语法

在SAS中使用函数的一般语法如下所示.

FUNCTIONNAME(argument1,argument2 ... argumentn)

这里的参数可以是一个常量,变量,表达式或其他函数.

函数类别

根据其用途,SAS中的函数分类如下./p>

  • 数学

  • 日期和时间

  • 字符

  • 截断

  • 其他

数学函数

这些是用于对变量值应用某些数学计算的函数.

示例

以下SAS程序显示了使用一些重要的数学函数.

数据Math_functions;

v1=21; v2=42; v3=13; v4=10; v5=29;/* Get Maximum value */max_val = MAX(v1,v2,v3,v4,v5);/* Get Minimum value */min_val = MIN (v1,v2,v3,v4,v5);/* Get Median value */med_val = MEDIAN (v1,v2,v3,v4,v5);/* Get a random number */rand_val = RANUNI(0);/* Get Square root of sum of the values */SR_val= SQRT(sum(v1,v2,v3,v4,v5));proc print data = Math_functions noobs;run;

当运行上面的代码时,我们得到以下输出 :

math_funcs_result

日期和时间函数

这些函数用于处理日期和时间值.

示例

以下SAS程序显示了日期和时间函数的使用.

data date_functions;INPUT @1 date1 date9. @11 date2 date9.;format date1 date9.  date2 date9.;/* Get the interval between the dates in years*/Years_ = INTCK('YEAR',date1,date2);/* Get the interval between the dates in months*/months_ = INTCK('MONTH',date1,date2);/* Get the week day from the date*/weekday_ =  WEEKDAY(date1);/* Get Today's date in SAS date format */today_ = TODAY();/* Get current time in SAS time format */time_ = time();DATALINES;21OCT2000 16AUG199801MAR2009 11JUL2012;proc print data = date_functions noobs;run;

当运行上面的代码时,我们得到以下输出 :

date_time_funcs_result

字符函数

这些是用于处理字符或文本值的函数.

示例

以下SAS程序显示了字符函数的使用.

data character_functions;/* Convert the string into lower case */lowcse_ = LOWCASE('HELLO');  /* Convert the string into upper case */upcase_ = UPCASE('hello');  /* Reverse the string */reverse_ = REVERSE('Hello');  /* Return the nth word */nth_letter_ = SCAN('Learn SAS Now',2);run;proc print data = character_functions noobs;run;

当运行上面的代码时,我们得到以下输出 :

char_funcs_result

截断函数

这些是用于截断数值的函数.

示例

以下SAS程序显示截断函数的使用.

data trunc_functions;/* Nearest greatest integer */ceil_ = CEIL(11.85);  /* Nearest greatest integer */floor_ = FLOOR(11.85);  /* Integer portion of a number */int_ = INT(32.41);  /* Round off to nearest value */round_ = ROUND(5621.78);run;proc print data = trunc_functions noobs;run;

当运行上面的代码时,我们得到以下输出 :

trunc_funcs_result

其他函数

现在让我们通过一些例子来理解SAS的各种功能.

示例

以下SAS程序显示了其他功能的使用.

data misc_functions;/* Nearest greatest integer */state2=zipstate('01040'); /* Amortization calculation */payment = mort(50000, . , .10/12,30*12);proc print data = misc_functions noobs;run;

当运行上面的代码时,我们得到以下输出 :

Misc_funcs_result

免责声明:以上内容(如有图片或视频亦包括在内)有转载其他网站资源,如有侵权请联系删除