特別說明:本節【SAS Says】基礎篇:SAS軟體入門(下),用的是數說君學習《The little SAS book》時的中文筆記,我們認為這是打基礎的最好選擇。
轉載請在文章開頭註明微信號:shushuojun,謝謝!
上節我們說了學習SAS的好處,以及SAS軟體入門(上),在微信號「shushuojun」中回復「SAS1」查看。
本節目錄:(老手建議複習一下1.13)
SAS軟體入門(下)
1.8 閱讀SAS日誌
1.9 輸出窗口中瀏覽結果
1.10 創建HTML輸出
1.11 SAS數據的邏輯庫
1.12 用SAS資源管理器訪問SAS數據集
1.13 使用SAS系統選項
SAS軟體入門(下)1.8 閱讀SAS日誌
在哪找到SAS日誌 SAS日誌窗口的位置隨著你使用的操作環境、選擇的模式(視窗、非交互、批處理)、個人的設置的不同而不同。在視窗模式下,提交程序之後,日誌窗口默認的位置如下圖:
對於批處理和非交互模式的日誌則會被寫入一個文件中,你需要使用操作環境的命令來查看,一般日誌文件的名字與對應的SAS程序名一直,如你的SAS程序命為abc.sas,那麼日誌文件的命則為abc.log
日誌包含的內容日誌中雖然有很多瑣碎,但也包含了重要的信息。這裡有一個將英裡轉換為千米的程序:
*Create a SAS data set named distance; *Convert miles to kilometers;
DATA distance;
Miles=26.22;
Kilometers=1.61*Miles;
*Print the results;
PROC PRINT DATA=distance;
RUN;
運行之後,SAS的日誌窗口會產生一個類似這樣的日誌:
① 說明了你使用的SAS版本和site。
② 是原始的SAS程序語句
③ 說明了數據步為你創建的數據集名稱,觀測值數和變量數。它可以幫助你確認你的程序沒有丟失觀測值,也沒有創建你不需要的變量。
④ 這部分顯示了數據步和過程步佔用的電腦資源。當你使用的是多用戶系統,或者處理大型數據而使得SAS運行佔用大量時間時,這部分信息可以幫助你檢查哪一步比較耗時。
如果SAS程序出現錯誤,錯誤信息也會反饋在日誌窗口中,說明哪裡出錯及出錯表現。
1.9 輸出窗口中瀏覽結果你使用的模式不同,產看輸出結果的方法也會不同。如果是在視窗模式下提交SAS程序,那麼直接在輸出窗口查看,如果是批處理和非交互模式下,那麼結果就會保存在一個文件裡,需要用命令查看。比如使用UNIX系統下的非交互模式,結果會存在一個後綴為.lst的文件裡,使用cat或其他更多命令來查看。
輸出窗口 提交程序後,結果會出現在輸出窗口中,下圖是一個輸出窗口的例子
列印或保存輸出窗口的目錄 激活輸出窗口的目錄,在菜單欄文件(file)下拉菜單中選擇列印(print)或保存(save)即可。
結果窗口 結果窗口起到輸出窗口的目錄作用,當你的輸出結果非常多時,結果窗口很有用。它可以讓你很清楚的看到輸出結果的每一部分。下圖是一個方差分析(ANOVA)過程的結果。在這個圖中,左邊是輸出結果的目錄,點擊+號將其展開,可以看見ANOVA結果的各個部分,雙擊某一部分,則該部分結果就會位於輸出窗口頂部。
列印或保存部分輸出 如果要列印結果窗口中顯示的某一部分的輸出,則需將滑鼠移到該部分上,右擊,選擇列印或保存即可。或者點擊一下,使其黑亮,再從菜單欄文件(file)的下拉菜單中選擇輸出或保存。
如果使用的是SAS視窗環境,那麼可以為結果創建超文本標記語言(HTML)格式。
參數選擇窗口 選擇菜單欄中工具(tools)下拉菜單的選項(options)-參數選擇(preferences)。選擇結果(result)選項卡,如下圖所示:
這個參數選擇窗口上,有一個「創建列表(create listing)」選項,默認的輸出就是列表輸出。下面還有「創建HTML」選項,用來創建HTML。樣式(style)選項用來為HTML選擇一個風格樣式。選擇之後,點擊OK。
結果瀏覽窗口和結果窗口 (注意下面提到的三種窗口:結果瀏覽窗口result viewer,結果窗口resultswindow,輸出窗口output window)
一旦選擇了HTML輸出,每次運行程序的時候都會自動出現一個結果瀏覽窗口(result viewer),下圖顯示了在運行了一個均值和輸出的程序後,出現兩個窗口:結果瀏覽窗口——顯示HTML輸出,結果窗口——顯示輸出的目錄。
結果瀏覽窗口一次只顯示輸出結果的一個部分,通過選擇結果窗口的目錄,可以查看其他的部分。值得注意的是,結果窗口給出的目錄中,每一個部分都給出了兩種相同的目錄,一個是連結到輸出窗口,一個是連結到結果瀏覽窗口
保存結果瀏覽窗口的輸出(output of result viewer)的方法:激活結果瀏覽窗口,選擇菜單欄文件(file)下拉菜單的保存(save as)、輸出(print)。
可以在style中為輸出選擇不同的風格,如下圖就是D3D的風格:
SAS邏輯庫庫只是數據集文件存放的地點。打開SAS視窗模式後,會看到SAS資源管理器窗口(explore),雙擊邏輯庫圖標,資源管理器窗口會顯示出所有已定義的圖標。要返回前一級窗口,選擇查看(view)-向上一級(up one level),或者在工具欄中直接點擊向上一級圖標
邏輯庫窗口 打開邏輯庫窗口後,除了自己創建的庫外,至少會呈現三個邏輯庫:sashelp,sasuser,和work,如果安裝了某些SAS模塊,還有一些特別的邏輯庫,比如SAS/GRAPH模塊的Maps邏輯庫。Sashelp包含了控制SAS會話以及樣本數據集的一些信息。WORK是sas數據集的臨時儲存地點,創建的數據集如果沒有指定庫,則默認儲存在這裡,關閉程序時則自動刪除數據集。也可以更改默認的庫,從而不是臨時庫。
創建新邏輯庫 創建新邏輯庫有兩種方法:在邏輯庫窗口中選擇文件(file)下拉菜單的新建(new);或者直接右鍵——新建。
在新建邏輯庫(new library)窗口中,為你的邏輯庫起一個名字,這裡叫做Mylib,指定庫的存放路徑。如果不想每次啟動SAS都要調用這個庫,則勾選啟動時啟用(enable at startup)即可。
這是一個新建的Mylib邏輯庫的視圖。
可以利用SAS資源管理器打開數據集、瀏覽、編輯,也可以列出數據集的信息,如創建時間和變量名。
目錄窗口 打開一個邏輯庫,進入一個目錄窗口,顯示這個庫中所有的文件和文件夾。右圖的目錄窗口中顯示Mylib邏輯庫有三個文件:Customers,Models,orders。雙擊某文件,則可以打開這個文件的可視視圖。
可視視圖 這個窗口允許你創建、瀏覽、編輯數據集。
列出SAS數據集的屬性 用資源管理器還可以列出SAS數據集的一些屬性情況,右擊某文件,選擇下拉菜單的屬性(properties)
屬性窗口顯示了SAS數據集的屬性信息,如創建時間、行列數等。
如果選擇列(columns)選項卡,則出現數據的列信息
SAS系統選項是影響SAS運行的一些參數,比如輸出的顯示、內存的佔用、錯誤的處理等問題。這些小問題由SAS為你設定好,你也可以改變它。
SAS系統選項的參數不是所有都適合你的操作環境,適合於你的再SAS的幫助文檔中給出。可以通過打開SAS系統選項窗口或使用option程序來查看你的SAS系統參數。Option程序的語句如下:
Proc options;
Run;
有四種方法可以指定系統選項的參數,SAS幫助文檔會告訴你哪種適合你的作業系統:
1. 系統管理員會創建一個包含了系統選項設定的配置文件,每次SAS啟動時都會訪問這個文件。
2. 在啟動SAS之後,根據系統提示指定系統選項。
3. 如果使用SAS視窗環境,可以從SAS系統選項中改變已選擇的選項。
4. 使用OPTIONS語句。
這四種方法按照優先性排列,方法2優先於方法1,方法3優先於方法2,方法4優先於3。如果使用SAS視窗環境,方法3,4最好。
OPTIONS語句 OPTIONS語句是SAS程序的一部分,並可影響之後的所有語句。由OPTIONS關鍵詞開頭,後面是相關選項。比如:
OPTIONS LINESIZE=80 NODATE;
OPTIONS語句既不屬於數據步也不屬於過程步,這個全局變量可以出現在程序的任何部分,但放在開頭最有意義,你可以很容易看到哪些選項在發揮作用。如果OPTIONS語句只出現在數據步或者過程步中,那麼它會影響那個過程,和下面的過程(If the OPTIONS statement is in a DATA or PROC step,then it affectsthat stepand the following steps.)。注意,後面的OPTIONS語句會覆蓋前面的,即以後面的OPTIONS為主。
SAS系統選項窗口 通過這個窗口也可以改變系統選項。可以通過在命令欄中輸入「OPTIONS」,或從工具(tools)下拉菜單中選擇.
窗口出來後,找到要修改的部分,右擊——修改值(modifythe value)即可。
一般選項 下面是一些可能用到的一般系統選項
CENTER|NOCENTER
輸出是否居中,還是左對齊。默認居中
DATE|NODATE
今天的日期是否出現在輸出的頂部。默認輸出
LINESEZE=n
控制輸出行的最大長度,n可能的值為64到256
NUMBER|NONUMBER
輸出的頁面頁碼是否需要。默認需要。
ORIENTATION=PORTRAIT;
ORIENTATION=LANDSCAPE;
指定列印輸出的方向。默認豎向(portrait)
PAGENO=n
輸出頁開始的頁面。默認為1
PAGESIZE=n
每個頁面輸出的最大行數。可能的值為15到32767
RIGHTMARGIN=n
LEFTMARGIN=n
TOPMARGIN=n
BOTTOMMARGIN=n
指定列印輸出的邊緣大小。默認0.00英寸(Specifies size of margin(such as 0.75in or 50px)to be used for printing output.Default:0.00in.)
YEARCUTOFF=yyyy
設定起始年份
數說工作室
是由幾位數據分析行業的愛好者也是從業者做的交流平臺,主要依託微博和微信兩個媒介,網站也正在籌備中。
主要分享一些零碎化的知識,關於數據挖掘理論、方法、電子書、有趣的結果,以及一些相關的行業應用等信息。
沒時間刷微博也沒關係,數說君每周會把一些精華內容整理一下,在微信上再發一次:
主要發布一些原創連載,或者行業精選文章。往期目錄:
前面【】內的字母是編號,回復可查看相應文章,也可以直接回復相關術語查看,比如回復「多因子」,則會推送相應的多因子選股模型的文章。
話題匯總:
【T1】統計學畢業之後可以坐什麼
《概率論-上帝的賭術》系列
【GLL】第一話:古典概率論,一場賭局引發的血案
【GLL】第二話:大數定律,看不見的神的秩序
【GLL】第三話:正態分布,眾生的百態
【GLL】第四話:暴走的假設檢驗
【GLL】第五話:回歸模型,命運的方程
【GLL】番外話:常用分布表
【GLL】局部完結篇
金融模型·量化投資系列
【F1】多因子選股模型
【F2】動量反轉
【F3】資本資產定價模型(CAPM)
【F4】盈餘管理的測量
算法理論&代碼
【A1】金融數據挖掘之樸素貝葉斯
【A2】金融數據挖掘之決策樹(ID3)
【MB1】面板數據與Eviews操作指南(上)
【MB2】面板數據與Eviews操作指南(下)
【logistic】logistic回歸:從生產到使用(使用篇)
【logistic】logistic回歸:從生產到使用(生產篇)
【logistic】logistic回歸建模指南
【SVM】分類戰車SVM:開題話
【SVM】分類戰車SVM:線性分類
【SVM】分類戰車SVM:最大間隔分類器
【SVM】分類戰車SVM:拉格朗日對偶問題
【SVM】分類戰車SVM:核函數
【SVM】分類戰車SVM:SMO算法
【SVM】分類戰車SVM:用Python做SVM模型
《統計師的Python日記》系列
【Python】第1天:誰來給我講講Python?
【Python】第2天:再接著介紹一下Python唄
本系列待續中...
《SAS Says》系列
【SAS】基礎篇:SAS軟體入門(上)
本系列分基礎篇、進階篇、高級篇,待續中...
《大數據與金融業》資訊系列
【dsj1】P quant與Q quant(轉)
【dsj2】P quant的裝備之戰
【dsj3】銀行如何裝備Hadoop平臺(轉)
【dsj4】全面了解大數據在銀行業的應用(轉)
【dsj5】全面了解大數據在證券業的應用(轉)
其他科普文/趣文/資訊:
(注意下面的編號是字母 O,不是數字0,看我的嘴型 → 歐~~)
【O1】P值之死
【O2】爭鳴!西方經濟學流派圖
【O3】數說君的自白:人口數據分析
【O4】獨立第三方的困局
【O5】餘額寶為什麼不該被取締?
【O6】一位數據分析師的年終總結(行業精選)
【O7】如果有12億支付寶用戶同時向你帳戶轉帳一塊錢,會發生什麼?(行業精選)