發表於2024-11-26
本書帶領讀者身臨其境地體驗數據科學領域的日常工作,書中的12章即為12個鮮活的實踐案例,包括航班延誤數據分析、股票配對交易仿真以及二十一點紙牌遊戲策略開發等,涵蓋統計學、數據庫、機器學習和可視化技術等眾多知識點。本書的重點是計算推理和問題求解的思維過程,而不涉及具體編程語言的語法細節。本書適閤作為統計計算、數據挖掘等相關課程的補充案例教材,也適閤該領域的技術人員閱讀參考。
作者簡介DeborahNolan(德博拉·諾蘭)在改進數學和統計學的教學方法以及為本科生提供拓展服務方麵傾注瞭大量心血。她擔任加州大學伯剋利分校本科教育的ZaffaroniFamily主席,獲得過伯剋利分校的大學傑齣教學奬,以及普林斯頓大學傑齣教學WilliamR.Kenan,Jr.客座教授席位。她是美國統計學會的會士,計算分會和教育分會的前任主席。她也是美國數理統計研究院的會士。她參與指導瞭數學和理學教師培訓計劃、加州大學教學培訓項目、在職名師培訓項目和美國數學教育培訓項目。她齣版瞭包括本書在內的多部著作。
DuncanTempleLang(鄧肯·坦普·朗)從事R語言和S語言程序開發工作20餘年,開發瞭100多個R程序包。他著重探索和開發新的統計計算方法,主要貢獻是調研來自其他學科的有發展前景的新範型和新技術,並將其集成到R環境中。他當前的研究工作包括:基於LLVM方法的R語言編譯器、R計算的溯源、類型推導,以及快速、靈活的貝葉斯和似然度計算框架(http://r-nimble.org),還有圖形處理器(GPU)。現在擔任加州大學戴維斯分校數據科學計劃項目的主管。
Nolan和TempleLang是《XMLandWebTechnologiesforDataScienceinR》一書的共同作者。他們組織和領導瞭多個NSF資助的暑期計劃,其目的是吸引大學生學習統計學領域的研究生課題,以及參加數據科學方麵的小型研討會。他們閤作開發瞭“數據計算的概念”這門課程並在各自的學校裏講授。他們協作開發瞭支持交互式和可復製的動態文檔、基於Web可視化等功能的係統。
譯者序
前言
緻謝
作者簡介
第一部分 數據操作和建模
第1章 基於室內定位係統的位置預測2
1.1 引言2
1.2 原始數據3
1.3 數據清洗和建立用於分析的數據錶示10
1.3.1 對於方嚮數據的探索12
1.3.2 對於MAC地址數據的探索13
1.3.3 對於手持設備位置數據的探索15
1.3.4 數據準備函數的創建17
1.4 信號強度的分析17
1.4.1 信號強度的分布18
1.4.2 信號與距離之間的關係22
1.5 預測位置的最近鄰方法26
1.5.1 測試數據的準備26
1.5.2 方嚮的選擇27
1.5.3 發現最近鄰29
1.5.4 交叉驗證和k的選擇31
1.6 練習題34
參考文獻36
第2章 櫻花公路賽參賽選手比賽時間建模37
2.1 引言37
2.2 將比賽結果錶讀入R中39
2.3 數據清洗和變量格式化46
2.4 探索所有男選手的跑步時間53
2.4.1 根據大量觀察繪製散點圖53
2.4.2 對平均成績構建擬閤模型56
2.4.3 橫截麵數據和協變量63
2.5 為跨年度的個人參賽選手構造記錄66
2.6 對個人跑步時間的變化進行建模74
2.7 從網上抓取比賽結果78
2.8 練習題84
參考文獻86
第3章 應用統計學方法識彆垃圾郵件87
3.1 引言87
3.2 郵件消息解析88
3.3 讀取郵件消息91
3.4 文本挖掘和樸素貝葉斯分類94
3.5 在郵件消息中找到單詞96
3.5.1 將消息劃分成消息頭部與消息正文96
3.5.2 從消息正文中移除附件97
3.5.3 從消息正文中抽取單詞103
3.5.4 完成數據準備過程105
3.6 實現樸素貝葉斯分類器106
3.6.1 測試數據與訓練數據107
3.6.2 訓練數據的概率估計108
3.6.3 分類新消息110
3.6.4 計算方麵的考慮114
3.7 遞歸劃分與分類樹115
3.8 將電子郵件消息組織成R語言數據結構117
3.8.1 處理郵件頭部118
3.8.2 處理附件121
3.8.3 在更多的郵件數據上測試代碼123
3.8.4 完成處理過程124
3.9 從郵件消息中獲取變量126
3.10 探索郵件特徵集閤133
3.11 使用rpart()模型擬閤郵件數據135
3.12 練習題139
參考文獻142
第4章 處理機器人和傳感器日誌文件:尋找圓形目標143
4.1 描述143
4.2 數據144
4.2.1 讀取一個完整的日誌文件146
4.2.2 探索日誌文件150
4.2.3 可視化路徑154
4.2.4 探索 “觀察”157
4.2.5 範圍值的誤差分布160
4.3 探測圓形目標162
4.3.1 連接機器人背後的片段166
4.3.2 確定一個片段是否對應於一個圓形168
4.4 實時流數據情況下探測目標180
參考文獻182
第5章 針對12GB數據集的分析策略:航班延誤案例183
5.1 引言183
5.2 獲取航班數據集184
5.3 處理海量數據集:計算航班延誤數184
5.3.1 R程序設計環境185
5.3.2 UNIX shell方法186
5.3.3 支持R的SQL數據庫188
5.3.4 R的bigmemory程序包191
5.4 使用並行計算進行數據探索:航班延誤的分布194
5.4.1 使用foreach編寫可並行化的循環194
5.4.2 使用“劃分-應用-閤並”方法獲得更好的性能196
5.4.3 使用“劃分-應用-閤並”方法發現航班飛行的最佳時間196
5.5 從探索分析到建模:舊飛機會帶來較大的延誤嗎200
參考文獻201
第二部分 仿真研究
第6章 股票的配對交易204
6.1 問題提齣204
6.2 數據格式208
6.3 金融數據的讀取209
6.4 時間序列的可視化211
6.5 查找開倉點和平倉點213
6.5.1 識彆倉位213
6.5.2 顯示倉位215
6.5.3 查找所有開/平倉216
6.5.4 計算一個倉位的收益218
6.5.5 找到k的最優值220
6.6 仿真研究223
6.6.1 股票價格序列仿真225
6.6.2 提升stockSim()函數的運行速度233
參考文獻235
第7章 分支過程的仿真研究236
7.1 引言236
7.2 隨機過程探索239
7.3 産生後代241
7.3.1 檢查結果244
7.3.2 考慮其他的實現方式245
7.4 性能分析與代碼改進245
7.5 從一個作業的後代到全部的後代247
7.6 單元測試248
7.7 函數返迴值的結構249
7.8 傢族樹:分支過程仿真250
7.9 仿真復製254
7.10 練習題260
參考文獻261
第8章 具有相變過程的自組織動態係統262
8.1 引言與動機262
8.2 模型263
8.3 實現BML模型265
8.3.1 創建初始網格結構266
8.3.2 測試網格創建函數269
8.3.3 顯示網格273
8.3.4 可視化網格273
8.3.5 簡單方便的麵嚮對象程序設計276
8.3.6 移動汽車278
8.4 評估代碼性能284
8.5 用C實現BML模型295
8.5.1 用C編寫算法297
8.5.2 編譯、加載和調用C代碼303
8.6 運行仿真307
8.7 實驗性編譯311
參考文獻312
第9章 模擬二十一點紙牌遊戲313
9.1 引言313
9.2 二十一點遊戲基礎314
9.3 玩一手二十一點遊戲317
9.4 遊戲策略321
9.5 玩多手二十一點遊戲326
9.6 一個更加精確的發牌器329
9.7 算牌333
9.8 閤而為一335
9.9 練習題337
參考文獻338
第三部分 數據和Web技術
第10章 棒球:探索關係數據庫中的數據340
10.1 引言340
10.2 Sean Lahman數據庫341
10.3 匯總球員工資得到球隊工資總額343
10.4 閤並工資總額數據與其他錶中的信息348
10.4.1 在工資總額數據中增加球隊名稱348
10.4.2 在工資總額數據中增加世界大賽記錄351
10.5 探索極端工資352
10.6 練習題354
參考文獻355
第11章 CIA世界概況的混搭應用357
11.1 引言357
11.2 采集數據359
11.3 從不同數據源集成數據360
11.4 準備繪圖數據361
11.5 使用Google Earth繪圖366
11.6 從CIA的XML文件中抽取人口統計信息370
11.7 直接生成KML376
11.8 附加的計算任務381
11.8.1 創建繪圖標識381
11.8.2 從字符串生成KML文件的效率381
11.8.3 從HTML文件中抽取緯度和經度383
11.9 練習題383
參考文獻386
第12章 利用Web抓取和文本挖掘探索數據科學職位招聘信息388
12.1 引言與動機388
12.2 探索不同的Web網站390
12.3 初步/探索性抓取:Kaggle網站的職位招聘列錶395
12.3.1 處理文本399
12.3.2 泛化到其他招聘啓事中400
12.3.3 抓取Kaggle招聘啓事列錶403
12.4 抓取CyberCoders.com404
12.4.1 從一條招聘啓事中提取技能列錶407
12.4.2 在搜索結果中發現指嚮招聘啓事的鏈接411
12.4.3 查找招聘啓事搜索結果的下一頁416
12.4.4 將這些函數集成在一起417
12.5 對任意網站可重用的通用框架418
12.6 抓取Career Builder網站421
12.7 抓取Monster.com網站422
12.8 分析結果:重要的技能424
12.9 Web抓取注意事項430
12.10 練習題431
參考文獻431
前言我們編寫本書有兩重目的:一是想讓學生能夠閱讀到計算推理方麵的內容以及真實世界中數據分析的細節;二是希望提供有趣而且有用的資料,幫助統計學教師為新型的統計學和數據科學專業的學生講授一門新拓展課程的重要方麵。這門強化型課程是為瞭揭示數據分析和計算推理方法,而不是注重統計方法學。我們的目標不是提供簡短的答案和方案,而是探索在數據科學項目中涉及的各種問題、各種可能的方案以及思維過程。
本書目標有很多種常用於數據分析和數據科學的編程語言。我們在本書中重點使用R語言,但也會使用其他類型的領域專用語言(DSL),甚至還會用到UNIXshell語言和C語言。本書不打算講授包括R語言在內的任何語言的文法或語義,也不會羅列大量數據科學傢常用的R語言程序包和函數。本書的編寫是為瞭使讀者能夠體驗數據分析中真實計算問題的思維過程。有很多書籍講解程序設計,所采用的方法是用一個章節介紹重要概念,再用其他章節介紹一些示例。這種方式是非常有用的,可以作為學習的基本齣發點。但是,本書中作為示例的程序代碼是由專傢編寫的最終精良版本,我們不會專門為讀者說明編寫代碼的實際過程,而是直接給齣最終結果代碼。我們的目的是要舉例說明這樣的過程:程序員如何著手處理問題,以及如何考慮采取各種方式實現解決方案。這個過程具有高度的動態性和可重復性。我們首先編寫一部分代碼,然後測試代碼、修改代碼、精化代碼、擴展代碼和概化代碼。經常齣現的情況是,當從第一次嘗試或原型中學到經驗後,我們會“從頭再來”,重新開發一個更簡潔、清晰的版本。在這個過程中,我們需要在簡潔性、效率、通用性、可重用性、正確的近似結果等各種要求之間做齣摺中。我們試圖找到的方法是,最小化代碼修改,但使得代碼執行得更快,也更靈活。本書中,我們想要示範說明這個整體過程,以及成熟的程序員經常會根據豐富的經驗做齣的那些決定。希望本書能對普通教材做齣補充,能為學生、研究者(甚至是教師)簡要地展示專業數據科學傢如何思考日常計算任務。
案例研究在統計計算課程中的應用為統計計算(或任何)專業開設一門新的課程,對教師來講是一項非常耗時的任務。我們常常必須去學習一些新的主題,或起碼的基本細節,對它們進行優選和排序,確定哪些主題必須放在課程裏,以及按照什麼次序排放。我們必須準備大量的作業,以便年復一年地輪換使用。我們還可以布置一些綜閤性程序設計作業以幫助學生學習,比如矢量化、循環、正則錶達式等內容。這些可怕的入門練習對於剛剛接觸基本概念的初學者來說是必需的,但這些入門練習不一定要被擴展為大作業或小型項目。我們比較贊成的方法是,在統計計算課程中給學生安排真實的實際數據分析項目,這些項目將新概念緊密結閤到常規的數據科學工作流中。我們想為學生揭示數據科學傢的日常活動,我們認為學生會對這些內容感興趣,而且這也有助於他們瞭解廣泛的數據分析應用。進而,我們想要與計算主題一起介紹一些統計方法和概念,這些主題在其他課程中是沒有的。基於這些理由,我們的統計計算課程起到瞭“百寶箱”的作用,囊括數據科學傢為瞭日常工作必須掌握的許多“真實世界”中的主題。
在記住瞭這些目標後,找到教學上有趣的項目和作業是一項極其有挑戰性的任務。要求這些項目和作業能夠讓學生實際完成並能激發他們的興趣,還要能夠示範專門的主題。在加州大學伯剋利分校和戴維斯分校講授計算課程時,我們花費瞭數日乃至數周的時間來開發作業,對可能的數據集和數據源産生瞭許多想法。我們往往需要對4~5個相關問題進行“麵試”,然後從中篩選齣其一並轉化為作業。有些問題雖然有趣,但是過於簡單或者過於復雜,因而不得不放棄。在進行完數據處理後,有些問題確實成為有趣的統計問題或數據分析問題,而有些問題則不適宜用來講解那些我們希望學生關注的與計算和統計相關的主題。我們希望本書及其案例研究在將有趣的問題整閤到麵嚮數據科學技能的統計課程和計算課程的過程中,為教師掃清障礙。
在當今數據科學時代,我們擁有眾多豐富而有趣的數據集可用於研究和教學。DebbySwayne、PaulMurrell和HadleyWickham等人組織的DataExpo競賽就是一個很好的數據來源,可提供各種有趣的、具有挑戰性的、可管理的問題。數據倉儲(如加州大學歐文分校(UCI)數據倉儲)在數量和多樣性方麵也在不斷增長。一些網站(如Kaggle.com)也能提供有趣的問題和數據。本書的關注點與它們稍微有所區彆。我們嘗試從原始數據開始,鑒彆和探索有趣的潛在問題,而不是使用規定好的問題或預處理過的數據。讓學生既體驗如何獲取和處理結構化或半結構化數據,也體驗如何限定和構造關於這些數據的有趣問題,我們覺得這些是非常重要的。這個動機源自於我們在工業研究實驗室(IBM和貝爾實驗室)、暑期學校(如統計學研究中的探索(ESR)暑期學校)以及加州大學伯剋利分校和戴維斯分校所進行的教學而積纍的經驗。
廣泛的主題本書匯集瞭非傳統的作業、樣例方案以及練習題。我們專門選擇瞭涉及多種主題、技術和特徵的問題,希望學生能夠接觸和學習如下這些問
數據科學R語言實踐:麵嚮計算推理與問題求解的案例研究法 下載 mobi pdf epub txt 電子書 格式 2024
數據科學R語言實踐:麵嚮計算推理與問題求解的案例研究法 下載 mobi epub pdf 電子書好好好,速度很快
評分在京東購物太方便瞭,送貨超級快,服務好!
評分在京東購物太方便瞭,送貨超級快,服務好!
評分值得讀
評分在京東購物太方便瞭,送貨超級快,服務好!
評分好好好,速度很快
評分好好好,速度很快
評分在京東購物太方便瞭,送貨超級快,服務好!
評分在京東購物太方便瞭,送貨超級快,服務好!
數據科學R語言實踐:麵嚮計算推理與問題求解的案例研究法 mobi epub pdf txt 電子書 格式下載 2024