SAS基礎教程摘錄

2021-04-13 05:31:29 字數 4271 閱讀 7939

一 簡介

1.命令

keys  快捷鍵

include 'filename' 引入指定檔案

libname 確認資料庫內容

recall 調出上次執行的程式

submit 提交 f3

二 sas資料管理

1.指定sas庫標記

libname course 'f:/course';

2.兩級名

庫標記.filename

三 原始檔案轉換成資料集

資料步 data 過程步 proc

1.資料步 data

infile '檔名';(若需直接嵌資料,用cards代替)

input ...;(讀入模式:

column,formatted,list,named)

兩階段——

1)編譯  pdv存放當前觀測

2)執行

2.column模式(適合固定列、標準字元數字)

input 變數名1 $1-12 變數名2 $4-18

$:變數為字元型

3.formatted模式

input @n/+n 變數名 informat ...;

輸入指標控制符:@n(移到第n列)/+n(後移n列)

4.sas日期

mmddyyw.

ddmmyyw.

datew.

...5.firstobs=和obs=選項

選擇記錄段

四 建立、瀏覽、編輯資料集

1.字元:<=200(以ascii碼存放)

數字:8位元組(以浮點數存放)

2.輸入informat

輸出format

3.建立

proc fsedit new=資料集名;

end;進fsedit視窗(add新增記錄;end存檔;cancel退

出)4.修改

proc fsedit data=資料集名;

可以用where獲得資料集的子集;delete刪除

5.瀏覽

proc fsview data=資料集名;

drop命令去掉不需要顯示的變數;where用上;where undo取消

6.viewtable

表編輯器

五 增刪改資料集的記錄或變數

1.賦值語句

variable=表示式;

注:  ** 冪運算 rasise=x**y;

|| 字串拼接 str=str1+str2;

2.sas函式

function-name(引數1,引數2,...)

total=board+trans+nonrev;

total=sum(board,trans,nonrev);

區別:若一項引數為空,sum()仍可計算,total不然

3.條件轉移語句

if ...  then [do; .. end;]

[else [do; .. end;]]

注:dest='dfw'中變數名dfw大小寫敏感

可由upcase(argument)函式解決

如:upcase(dest)='dfw'

4.length語句

length variable(s) $length;

5.drop=和keep=選項選擇變數

刪除   保留

6.if語句選擇觀測

如:if total > 175;

7.delete語句(不常用)

if ... then delete;

8.sas日期常數和日期函式

常數: 'ddmmmyy'd

函式: year(date);...

9.set語句

set a;

可從已存在資料集(old)中建立資料集

data new|old;

set old;

其他sas語句;

run;

六 合併與拼接

1.set語句拼接資料集

data c;

set a b..;

run;

若有不同變數名,則相應空缺

2.rename=選項

重新命名變數

set a b(rename=(old=new));

3.排序

proc sort data=a out=b;

by 變數名;

run;

4.合併

data a;

merge b c..;

by 變數名列;

run;

5.in=選項

a(in=0);觀測不是來自資料集a

a(in=1);觀測來自資料集a

_n_是執行資料步時自動產生的變數,迴圈執行次數的計數

6.rename=選項

也在變數名不同時用於重新命名

七 製作報表報告

1.產生簡單列表

proc print data=a;

run;

若省去data=a則顯示最近的資料集

2.noobs選項

print過程中去掉obs列

3.var語句

控制變數出現與否及順序

4.選擇資料集觀測

where

---between-and

---contains

5.sum a b;

計總和(列)

6.資料分組和小計(按變數x分組)

proc sort data=a out= b;

by x..;

proc print data=c;

id m..;

var y..;

sum n..;

by x..;

run;

7.id語句

對報表修改

8.按組分頁

pageby x;

10.label標籤

label x=''

y=''

...11.split控制表頭分割

split='*'(*為分割符)

12.format輸出格式

format x date7. y dollar10;

13.定義使用者化格式

proc format;

var $destfmt 'lon'='london'...;

14.sas系統選項

options

15.類變數,分析變數?p96

16.tabulate過程

proc tableulate data=a;

class x;

var y;

table 頁,行,列;

run;

n為頻數

17.table語句

操作符控制**格式

符號  作用

逗號, 轉另一維

空格  **連排

星號* 交叉組合分組

如: table a,b,c; 三維表(頁/行/列)

18.控制**形狀

tabulate的 format= 每格寬度

table的 rts= 第1列寬度

19.選擇需要觀測

where x in('m','n');

20.var定義分析變數後,預設為sum

21.為**加標籤

keylabel x='label';

注:label<40,tabulate自動生成,無需label或split=

八 sas中使用sql

表--sas資料檔案--檔案

行--觀測--記錄

列--變數--域

九 sas巨集

系統資訊

條件執行資料步/過程步

開發互動系統(%windows語句)

產生與資料無關程式

不同資料/過程步間傳遞資料

1.%let語句

定義巨集變數

%let 巨集變數=x;

2.symput函式

傳遞資料

call symput(a,b);

a:將要定義的

b:巨集變數值

若字串含引號 則用雙引

3.sas巨集呼叫

定義:%macro name(傳遞呼叫的變數,...);

呼叫實體

%mend name;

引用:%name(引數);

XSL基礎教程

xsl基礎教程 一 http www 128.ibm.com developerworks cn xml ccidnet xslfund index1.html xsl基礎教程 二 http www.ibm.com developerworks cn xml ccidnet xslfund inde...

ps基礎教程

ps基礎教程 軟體簡介 推薦版本 流行多用的版本cs2 cs5,推薦cs3和cs5,cs2版本較舊,不推薦使用。基礎教學目錄 第一課 photoshop工具欄的使用01 第二課 工具欄的使用02 第三課 photoshop圖層 第四課 色彩原理和圖層的混合模式 第五課 圖層的樣式 第六課 圖層蒙版和...

php基礎教程

本教程旨在以最簡單 最易懂的方式,讓讀者對php有個整體上的把握和了解,並具備基本的php程式設計能力。本教程並不講環境搭建和一些技術竅門,但會提供一些示例,方便讀者理解概念。php可以用來作 和手機應用的伺服器介面,很多大型公司的 再用php做。php可以給手機應用提供伺服器介面。以.php結尾的...