首页 理论教育 实用SAS基础:赋值语句详解

实用SAS基础:赋值语句详解

时间:2023-08-10 理论教育 版权反馈
【摘要】:赋值语句是最常用的数据步语句。直观地说,原有数据体是一个长方形,赋值语句加宽数据体。例2.2的SAS程序中包含以下4条赋值语句:第1条赋值语句建立变量heji,它表示公司所发各项钱款数;第2和第3条赋值语句用if-else语句建立变量koushui,它表示每位职工缴纳所得税数额;第4条赋值语句建立变量shifa,它表示扣除所得税后实发给职工的薪金。

实用SAS基础:赋值语句详解

赋值语句是最常用的数据步语句。使用赋值语句能在SAS数据集中增加新的变量,该变量的值一般由原变量的值计算得到,也可以另外赋值。赋值语句由变量+等号+表达式组成,如“y=x1+2.5*x2+x3+2.5;”,这条赋值语句的作用是产生新的变量y,其每次观察值由相应x1、x2、x3观察值计算得到。直观地说,原有数据体是一个长方形,赋值语句加宽数据体。

例2.2的SAS程序中包含以下4条赋值语句:

第1条赋值语句建立变量heji,它表示公司所发各项钱款数;第2和第3条赋值语句用if-else语句建立变量koushui,它表示每位职工缴纳所得税数额;第4条赋值语句建立变量shifa,它表示扣除所得税后实发给职工的薪金。这4条语句使数据集比原始数据(表2-1)增加了3个变量。

数据步赋值语句中不仅可以使用加减乘除运算,还可以使用多种数学函数、金融函数、随机数函数,还可使用时间序列函数。这些函数在朱世武所编著的《SAS编程技术教程》一书的附录中可以找到。这儿首先介绍时间序列函数dif。dif(x)是计算变量x的每个观测值减去前一观测值的差。

例4.1 表2-2已给出连续10个交易日3只股票x、y、z的价格。试计算每个交易日股价较前一交易日的涨跌数。

解 计算每个交易日股价较前一交易日的涨跌数可以使用函数dif(x),它的值等于每个观测值序列中,观测值减去前一观测值的差。建立以下程序:

(www.xing528.com)

则SAS数据集stock存有7个变量的10次观测值,除了已有的4个变量外,又增加变量xdif、ydif、zdif,它们分别是股票x、y、z的股价与上一工作日的差。提交程序,用proc print语句打印出SAS数据集stock如下:

xdif、ydif、zdif就是3只股票的日涨幅。5月7日的股价无法减去前一日的股价,因而该日xdif、ydif、zdif的值是空缺的。

还有很多时间函数,本书不一一介绍,读者可在前述朱世武所著书籍中的表A.3中查到。

练习题 某人发现自己儿子的身高和体重的一些记录如表4-1所示,希望知道在相应时间段儿子的身高和体重平均每天增加多少。使用SAS代码计算之。

表4-1 某人儿子的身高和体重记录

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈