在分析資料時,年齡常常是一個分析的重要變數,但是年齡的資料一般不會設成固定的數值性變數,通常在分析資料時,年齡的資訊都是利用生日而獲得,在分析健保資料庫時,資料庫中是沒有年齡這一個變數,所以我們需要年齡這個變數時,亦是用資料中的生日變數獲得。因為SAS儲存日期是以距離1960/01/01的天數當作儲存資訊,故我們看到很多分析者採用(今日-生日)除上365的公式來計算年齡,但其實SAS有提供我們可以計算年數(年齡)的函數。
範例(計算客戶年齡). 我們可以利用YRDIF函數計算客戶的年齡
Step1. 選擇查詢產生器
![01 01](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9ebe99588.jpg)
Step2. 將原始資料變數拉入右側的選取資料中後,點選![02 02](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9ec060ef7.jpg)
![02 02](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9ec060ef7.jpg)
![03 03](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9ed16de58.jpg)
Step3. 選擇進階運算式->下一步
![04 04](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9edb605d0.jpg)
Step4. 從左下方的函數和變數的選擇區塊中點選函數->類別->日期及時間->YRDIF函數
![05 05](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9ef063f74.jpg)
Step5. 第1個引數是開始日,所以我們要輸入出生日,從左下方的函數和變數的選擇區塊中點選表格->t1(DATE_FUN)->出生日
![06 06](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9f052d6f6.jpg)
Step6. 第2個引數是結束日,所以我們要輸入今天日期,從左下方的函數和變數的選擇區塊中點選函數->類別->日期及時間->TODAY函數
![07 07](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9f19bf313.jpg)
Step7. 第3個引數是計算方式,如果不了解,可以從左下方的函數和變數的選擇區塊中點選函數->類別->日期及時間->YRDIF函數,從右下角的函數說明區塊可以得到我們要的資訊。
![08 08](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9f327a690.jpg)
Step8. 將第3個引數輸入’Actual’
![09 09](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9f5121561.jpg)
Step9. 輸入欄名稱跟標籤後按完成
![10 10](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9f61230b3.jpg)
Step10. 按執行
![11 11](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9f7a25495.jpg)
執行完後,資料集會多出一個新變數age
![12 12](https://blogs.sas.com/content/sastaiwan/files/2020/02/522c9f8ed29e0.jpg)
我們可以另外運用format或round函數將年齡改為整數或是我們想呈現的型態
Tags