《SAS數(shù)據(jù)分析》詳細(xì)闡述了與SAS數(shù)據(jù)分析相關(guān)的基本解決方案,主要包括SAS編程入門,數(shù)據(jù)操控和轉(zhuǎn)換,合并、索引、加密和壓縮技術(shù),統(tǒng)計(jì)、報表、轉(zhuǎn)換過程和函數(shù),高級編程技術(shù):SAS宏,函數(shù)、選項(xiàng)和自動變量,Proc SQL高級編程技術(shù),深入理解Proc SQL,數(shù)據(jù)可視化,報表機(jī)制和數(shù)據(jù)傳輸系統(tǒng)等內(nèi)容。此外,本書還提供了相應(yīng)的示例、代碼,以幫助讀者進(jìn)一步理解相關(guān)方案的實(shí)現(xiàn)過程。 本書適合作為高等院校計(jì)算機(jī)及相關(guān)專業(yè)的教材和教學(xué)參考書,也可作為相關(guān)開發(fā)人員的自學(xué)用書和參考手冊。
《SAS數(shù)據(jù)分析》是一本綜合性質(zhì)的參考指南。在快速瀏覽了SAS的架構(gòu)和組件后,本書引領(lǐng)讀者通過不同的方式,從不同的數(shù)據(jù)源中導(dǎo)入和讀取數(shù)據(jù)。其間,讀者將了解SAS Base、4GL編程語言和SQL過程,其中涵蓋了與數(shù)據(jù)管理和數(shù)據(jù)分析相關(guān)的諸多知識。隨后還將學(xué)習(xí)微程序設(shè)計(jì)方面的高級內(nèi)容。
SAS是當(dāng)今數(shù)據(jù)管理和分析領(lǐng)域中的領(lǐng)先工具,支持快速、簡單的數(shù)據(jù)處理,且有助于用戶在制定決策時獲取有價值的業(yè)務(wù)見解。
本書是一本綜合性質(zhì)的參考指南。在快速瀏覽了SAS的架構(gòu)和組件后,本書引領(lǐng)讀者通過不同的方式,從不同的數(shù)據(jù)源中導(dǎo)入和讀取數(shù)據(jù)。其間,讀者將了解SAS Base、4GL編程語言和SQL過程,其中涵蓋了與數(shù)據(jù)管理和數(shù)據(jù)分析相關(guān)的諸多知識。隨后還將學(xué)習(xí)微程序設(shè)計(jì)方面的高級內(nèi)容。
在閱讀完本書后,相信讀者將能夠成為一名SAS編程方面的專家,進(jìn)而方便地使用SAS處理和管理數(shù)據(jù)問題。
適用讀者
如果讀者是一名數(shù)據(jù)專業(yè)人士且剛接觸到SAS編程,同時希望成為這一領(lǐng)域的專家,那么本書十分適合您。對基礎(chǔ)數(shù)據(jù)管理概念的理解將有助于讀者獲得最大的收益。
本書內(nèi)容
第1章介紹編程的基本概念,并幫助讀者編寫較為基礎(chǔ)的SAS程序。其間將探索SAS的幕后知識,幫助讀者掌握基礎(chǔ)知識,以供后續(xù)高級概念的學(xué)習(xí)。
第2章整體介紹數(shù)據(jù)操控和轉(zhuǎn)換方面的知識,包括數(shù)字-字符轉(zhuǎn)換、處理缺失值和空格,以及邏輯和控制功能。
第3章將通過示例重點(diǎn)討論各種數(shù)據(jù)表組合技術(shù)的優(yōu)缺點(diǎn),并深入介紹SAS如何處理代碼。
第4章介紹內(nèi)建SAS過程,以幫助我們減少代碼量,同時能夠轉(zhuǎn)換數(shù)據(jù)、生成統(tǒng)計(jì)數(shù)據(jù)、運(yùn)行統(tǒng)計(jì)測試并生成報表。
第5章主要討論循環(huán)和SAS宏等概念,從而幫助我們理解SAS中的高級編程。
第6章將介紹基于系統(tǒng)選項(xiàng)和功能的SAS宏,進(jìn)而實(shí)現(xiàn)代碼的調(diào)試和優(yōu)化。
第7章主要討論P(yáng)roc SQL,其中涉及笛卡兒連接等基礎(chǔ)概念,隨后探討在Proc SQL中使用DATA步驟的優(yōu)缺點(diǎn)。通過多個示例,我們將通過Proc SQL執(zhí)行多項(xiàng)數(shù)據(jù)任務(wù)。
第8章將討論如何整合Proc SQL和宏。
第9章介紹數(shù)據(jù)可視化問題,該問題在大數(shù)據(jù)領(lǐng)域中十分重要。可視化分析可幫助我們進(jìn)一步理解數(shù)據(jù)報表和數(shù)據(jù)挖掘中獲取的洞察結(jié)果。
第10章重點(diǎn)介紹多種格式和平臺的數(shù)據(jù)報表,以及洞察結(jié)果的打包和生產(chǎn)過程。
在閱讀完本書后,讀者將了解SAS編程所需的基礎(chǔ)知識。
下載示例代碼文件
讀者可訪問www.packt.com并通過個人賬戶下載本書的示例代碼文件。無論讀者在何處購買了本書,均可訪問www.packt.com/support,經(jīng)注冊后我們會直接將相關(guān)文件通過電子郵件的方式發(fā)送給您。
下載代碼文件的具體操作步驟如下。
(1)訪問www.packt.com并注冊。
(2)選擇Support選項(xiàng)卡。
(3)單擊Code Downloads按鈕。
(4)在Search搜索框中輸入書名并按照屏幕上的說明進(jìn)行操作。
當(dāng)文件下載完畢后,可利用下列軟件的最新版本解壓或析取文件夾中的內(nèi)容。
? WinRAR/7-Zip(Windows環(huán)境)。
? Zipeg/iZip/UnRarX(Mac環(huán)境)。
? 7-Zip/PeaZip(Linux環(huán)境)。
另外,本書的代碼包也托管于GitHub上,對應(yīng)網(wǎng)址為https://github.com/PacktPublishing/ Hands-On-SAS-For-Data-Analysis。若代碼被更新,現(xiàn)有的GitHub庫也會保持同步更新。
讀者還可訪問https://github.com/PacktPublishing/并從對應(yīng)分類中查看其他代碼包和視頻內(nèi)容。
下載彩色圖像
我們還進(jìn)一步提供了本書使用的截圖/圖表的彩色圖像,讀者可訪問http://www. packtpub.com/sites/default/files/downloads/9781788839822_ColorImages.pdf進(jìn)行查看。
圖標(biāo)表示警告或重要的注意事項(xiàng)。
圖標(biāo)表示提示信息和操作技巧。
讀者反饋和客戶支持
歡迎讀者對本書提出建議或意見并予以反饋。
對此,讀者可向customercare@packtpub.com發(fā)送郵件,并以書名作為郵件標(biāo)題。
盡管我們希望對本書做到盡善盡美,但疏漏依然在所難免。如果讀者發(fā)現(xiàn)謬誤,無論是文字錯誤抑或是代碼錯誤,還望不吝賜教。對此,讀者可訪問http://www.packtpub.com/ submit-errata,選取對應(yīng)書籍,輸入并提交相關(guān)問題的詳細(xì)內(nèi)容。
版權(quán)須知
一直以來,互聯(lián)網(wǎng)上的版權(quán)問題從未間斷,Packt出版社對此類問題異常重視。若讀者在互聯(lián)網(wǎng)上發(fā)現(xiàn)本書任意形式的副本,請告知我們網(wǎng)絡(luò)地址或網(wǎng)站名稱,我們將對此予以處理。關(guān)于盜版問題,讀者可發(fā)送郵件至copyright@packtpub.com。
若讀者針對某項(xiàng)技術(shù)具有專家級的見解,抑或計(jì)劃撰寫書籍或完善某部著作的出版工作,可訪問authors.packtpub.com。
問題解答
若讀者對本書有任何疑問,可發(fā)送郵件至questions@packtpub.com,我們將竭誠為您服務(wù)。
哈里斯·格拉蒂是倫敦的一名顧問、分析師、建模師和培訓(xùn)師。他在領(lǐng)先的銀行、管理咨詢公司和媒體中心擁有16年的財務(wù)、咨詢和項(xiàng)目管理經(jīng)驗(yàn)。他喜歡在業(yè)余時間揭開他那復(fù)雜的工作的神秘面紗。這使他成為分析論壇的作家和演說家。他出版的書籍包括由Packt出版的SAS for Finance和由英國特許信息技術(shù)協(xié)會(BCS)出版的數(shù)據(jù)分析師的角色。他擁有品牌傳播工商管理碩士學(xué)位和心理學(xué)學(xué)位。
第1部分 SAS基礎(chǔ)知識
第1章 SAS編程入門 3
1.1 SAS數(shù)據(jù)集 3
1.1.1 創(chuàng)建一個SAS表 4
1.1.2 創(chuàng)建數(shù)據(jù)集 6
1.2 SAS編程語言基本語法 8
1.2.1 數(shù)據(jù)步驟 9
1.2.2 Proc SQL 10
1.3 SAS LOG 10
1.3.1 SAS中的命名規(guī)則 11
1.3.2 SAS中Teradata的命名規(guī)則 12
1.4 數(shù)據(jù)集選項(xiàng) 12
1.4.1 壓縮技術(shù) 13
1.4.2 加密技術(shù) 13
1.4.3 索引機(jī)制 14
1.5 SAS運(yùn)算符 15
1.5.1 算術(shù)運(yùn)算符 15
1.5.2 比較運(yùn)算符 16
1.5.3 邏輯運(yùn)算符 16
1.6 格式 16
1.6.1 格式化有效數(shù)據(jù)以使其更具可讀性 16
1.6.2 指定一種格式以使其具有實(shí)際意義 18
1.6.3 調(diào)整數(shù)據(jù)類型 19
1.7 子集數(shù)據(jù)集 22
1.7.1 WHERE語句和IF語句 23
1.7.2 使用OPTIONS 24
1.7.3 DROP或KEEP選項(xiàng) 25
1.7.4 查看屬性 26
1.8 字典表 28
1.9 _ALL_和_IN_的角色 31
1.10 本章小結(jié) 34
第2章 數(shù)據(jù)操控和轉(zhuǎn)換 35
2.1 變量的長度 36
2.2 大小寫轉(zhuǎn)換和對齊 39
2.2.1 LowCase()、PropCase()和UpCase()函數(shù) 39
2.2.2 AnyUpper()、AnyLower()和NoTupper()函數(shù) 40
2.2.3 Left()和Right()函數(shù) 41
2.3 字符串識別 41
2.3.1 Scan()函數(shù) 42
2.3.2 Index()、Indexc()和Indexw()函數(shù) 46
2.3.3 Find()函數(shù) 47
2.4 處理空格 50
2.5 缺失值和多重值 51
2.6 區(qū)間計(jì)算 52
2.7 連接 57
2.7.1 CAT()函數(shù) 57
2.7.2 CATS()、CATT()和CATX()函數(shù) 58
2.7.3 Lag()函數(shù) 60
2.8 邏輯和控制 62
2.8.1 IFC()和IFN()函數(shù) 62
2.8.2 WhichC()或WhichN()函數(shù) 63
2.8.3 Choosen()和Choosec()函數(shù) 64
2.9 數(shù)字操控 65
2.10 本章小結(jié) 67
第2部分 合并、優(yōu)化和描述性統(tǒng)計(jì)數(shù)據(jù)
第3章 合并、索引、加密和壓縮技術(shù) 71
3.1 合并機(jī)制簡介 71
3.1.1 連接 72
3.1.2 交叉 73
3.1.3 合并 73
3.1.4 更新 74
3.1.5 修改 76
3.2 連接 77
3.2.1 不同的變量長度和附加變量 77
3.2.2 重復(fù)值 80
3.2.3 不同的數(shù)據(jù)類型 80
3.2.4 利用臨時變量 80
3.2.5 PROC APPEND 82
3.3 交叉 84
3.4 合并 86
3.4.1 匹配法 86
3.4.2 重疊變量 88
3.4.3 一對多合并 90
3.4.4 數(shù)據(jù)向量編程 91
3.4.5 多對多合并 93
3.5 索引機(jī)制 96
3.5.1 唯一值 99
3.5.2 缺失值 99
3.6 加密 100
3.7 本章小結(jié) 102
第4章 統(tǒng)計(jì)、報表、轉(zhuǎn)換過程和函數(shù) 103
4.1 Proc Freq 103
4.1.1 交叉表 105
4.1.2 限制Proc Freq的輸出 106
4.1.3 基于控制變量的交叉表 106
4.1.4 Proc Freq和統(tǒng)計(jì)測試 108
4.2 Proc Univariate 111
4.2.1 基本統(tǒng)計(jì)和極端觀察數(shù)據(jù) 112
4.2.2 正態(tài)性測試 113
4.2.3 位置測試 115
4.3 Proc Means和Proc Summary 116
4.3.1 Proc Means 116
4.3.2 Proc Summary 117
4.4 Proc Corr 118
4.5 Proc REG 119
4.6 Proc Transpose 125
4.7 本章小結(jié) 128
第3部分 高 級 編 程
第5章 高級編程技術(shù):SAS宏 131
5.1 宏定義 131
5.2 宏變量處理機(jī)制 132
5.3 宏解析跟蹤機(jī)制 138
5.4 宏定義處理機(jī)制 141
5.5 比較位置和關(guān)鍵字參數(shù) 143
5.6 數(shù)據(jù)驅(qū)動型編程 144
5.7 利用自動全局宏變量 146
5.8 評估宏 149
5.9 編寫高效的宏 152
5.10 本章小結(jié) 153
第6章 函數(shù)、選項(xiàng)和自動變量 155
6.1 NOMPREPLACE和MREPLACE 155
6.2 NOMCOMPILE和NCOMPILE 157
6.3 MCOMPILENOTE 158
6.4 NOMEXECNOTE和MEXECNOTE 159
6.5 MAUTOCOMPLOC 160
6.6 MACRO和NOMACRO 161
6.7 交換DATA步驟和宏變量之間的值 162
6.8 Call Execute 164
6.9 修改CALL SYMPUT示例 165
6.10 解析宏變量 166
6.10.1 文本中的宏變量名稱 166
6.10.2 宏變量和庫 167
6.10.3 間接宏引用 169
6.10.4 基于單一宏調(diào)用的宏變量引用系列 170
6.10.5 多個&符號 171
6.11 宏屏蔽機(jī)制 172
6.11.1 使用%STR 173
6.11.2 使用%NRSTR 175
6.11.3 使用%BQUOTE和%NRBQUOTE 176
6.12 本章小結(jié) 176
第4部分 SAS中的SQL
第7章 Proc SQL高級編程技術(shù) 179
7.1 比較數(shù)據(jù)步驟和Proc SQL 179
7.2 Proc SQL連接 180
7.2.1 內(nèi)連接 182
7.2.2 左連接 184
7.2.3 右連接 187
7.2.4 全連接 189
7.2.5 一對多連接 190
7.2.6 多對多連接 192
7.3 Proc SQL概要 193
7.3.1 子集 193
7.3.2 分組和匯總機(jī)制 196
7.4 字典表 198
7.5 本章小結(jié) 200
第8章 深入理解Proc SQL 201
8.1 Proc SQL中的SAS視圖 201
8.1.1 SQL視圖語法 202
8.1.2 描述視圖 203
8.1.3 利用視圖提升性能 206
8.2 利用Proc Means執(zhí)行修改操作 208
8.2.1 刪除操作 208
8.2.2 修改操作 210
8.3 利用Proc SQL識別重復(fù)內(nèi)容 214
8.4 在Proc SQL中創(chuàng)建索引 217
8.5 宏和Proc SQL 219
8.5.1 利用Into子句創(chuàng)建宏變量 219
8.5.2 利用Into子句創(chuàng)建多個宏變量 220
8.6 本章小結(jié) 222
第5部分 數(shù)據(jù)可視化和報表