JavaScript數據整理( 簡體 字) | |
作者:[美]阿什利·戴維斯(Ashley Davis)著 楊小冬譯 | 類別:1. -> 程式設計 -> 網路編程 -> Javascript |
出版社:清華大學出版社 | 3dWoo書號: 52210 詢問書籍請說出此書號! 有庫存 NT售價: 490 元 |
出版日:11/1/2019 | |
頁數:450 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787302537298 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章快速入門:建立數據處理流程1 主要內容
● 建立數據管道 ● 采集、存儲和檢索 ● 處理異常數據集 ● 清洗和準備原始數據 ● 使用D3實現交互式可視化 數據的世界很大,單憑自己就想暢游其中是一件非常困難的事。《JavaScript數據整理》可以作為你的指導,帶你了解如何使用JavaScript來處理數據。
《JavaScript數據整理》是一本非常實用的實際操作指南,內容非常寬泛,為你介紹如何使用JavaScript來處理數據。《JavaScript數據整理》詳細介紹了整個開發過程,在閱讀《JavaScript數據整理》的過程中,你會感覺就像是自己在親自執行相關工作。 書中涵蓋大量的工具、技術和設計模式,而這些是使用JavaScript高效處理數據所必不可少的。通過《JavaScript數據整理》的學習,你將了解到如何應用這些技能并構建一個切實可行的數據處理流程,其中包括數據整理的所有階段,從數據采集一直到數據可視化。 當然,《JavaScript數據整理》無法涵蓋關于數據整理的所有內容,因為這一主題的范圍極其廣泛,并且不斷發展演變,但是,《JavaScript數據整理》的一個主要目標就是幫助你構建并管理自己的數據整理工具包。閱讀并認真學習《JavaScript數據整理》以后,你不僅能夠構建數據處理流程,還可以掌握相關技能,從而自如地在這個復雜且不斷發展的生態系統中遨游,評估各種可幫助你獨立創建或擴展系統的工具和庫,并能快速推進你自己的開發過程。 《JavaScript數據整理》的目標讀者 《JavaScript數據整理》主要面向想要提升數據整理技能的中等水平的JavaScript開發人員。要想充分理解《JavaScript數據整理》的內容,你應該已經對某種流行的JavaScript開發平臺(如瀏覽器、Node.js、Electron或Ionic)有著豐富的使用經驗。 你需要對JavaScript有多大程度的了解呢?基本上來說,你應該對基本語法以及如何使用JavaScript匿名函數有一定的了解。《JavaScript數據整理》中會用到Node.js代碼中簡潔的箭頭函數語法以及基于瀏覽器的代碼中的傳統語法(為了向后兼容)。 如果對Node.js和異步編碼有基本的了解,那么會對學習《JavaScript數據整理》有非常大的幫助,不過,即使不了解這些內容也沒有關系,《JavaScript數據整理》第2章提供了關于使用JavaScript創建Node.js和基于瀏覽器的應用的基礎知識,并簡要介紹如何使用Promise進行異步編碼。 即使你不具備很好的JavaScript技能,也不必過分擔心,這是一種非常簡單的語言,可以輕松上手,并且在網上可以找到大量相關的學習資料。我相信,在閱讀《JavaScript數據整理》的過程中,你可以輕松地學會JavaScript。如果你想要學習數據整理,同時還需要學習JavaScript,也不用擔心,只需要付出一點點額外的努力就完全沒有問題。 此外,你還需要掌握一些基本的計算機技能,以便安裝Node.js以及《JavaScript數據整理》中涉及的其他工具。要想執行《JavaScript數據整理》中提供的示例代碼,你需要具備文本編輯器、Node.js、瀏覽器,并且能夠訪問Internet(用于下載示例代碼)。 《JavaScript數據整理》的組織結構:路線圖 《JavaScript數據整理》分為14章,涵蓋了數據整理的各個主要階段。首先,我會對每個階段進行較為詳細介紹,然后提供更詳盡的示例,最后著重解決在將數據處理流程置于生產環境中時要應對的各種問題。 ● 第1章對整個數據整理過程進行了簡單介紹,并解釋了為什么需要使用JavaScript來完成數據整理工作。 ● 第2章介紹構建Node.js應用和基于瀏覽器的應用以及使用Promise進行異步編碼的基本知識。如果你已經對這些基本知識有了很好的了解,就可以跳過該章,繼續學習后面的內容。 ● 第3章主要介紹數據的采集、存儲和檢索。可以為你解答以下問題:如何檢索數據?如何存儲數據以便進行高效檢索?該章講解如何從文本文件和REST API讀取數據,如何解碼CSV和JSON格式,并帶你了解MongoDB和MySQL數據庫的基本使用方法。 ● 第4章簡要介紹一些不常見的數據檢索方法:使用正則表達式解析非標準格式,通過網頁爬取技術從HTML頁面提取數據,以及必要時采用二進制格式。 ● 第5章介紹探索性編碼和數據分析,這是一種功能強大并且可以有效提升工作效率的技術,能夠幫助你快速構建數據處理流程。我們首先在Excel中構建原型,然后在Node.js中進行編碼,最后在瀏覽器中實現基本的可視化。 ● 第6章主要關注數據清洗和轉換,這些是必不可少的準備工作。我們將了解用于處理問題數據的各種方法。 ● 第7章回答一個較難的問題:如果數據文件太大,無法在內存中完整存儲,那么我們應該如何處理這種文件呢?我們的解決方案是使用Node.js流逐步地遞增式地處理這種數據文件。 ● 第8章介紹我們應該如何實際處理大型數據集,方法就是使用數據庫。我們將帶你了解各種MongoDB使用技術,幫你高效地檢索可以在內存中存儲的數據。我們將使用MongoDB API來對數據進行篩選、投影和排序。此外,還將使用遞增式處理方法,從而確保可以處理大型數據集,而不會耗盡內存。 ● 第9章介紹如何使用JavaScript進行數據分析。首先介紹基本的構建塊,然后帶你了解更多高級技術。在這里,你將學到滾動平均數、線性回歸的相關知識,掌握如何處理時間序列數據,并了解數據變量之間的關系以及更多其他內容。 ● 第10章主要介紹基于瀏覽器的可視化,這也是JavaScript為人稱道的一點。我們將采用一些真實的數據,并利用C3圖表庫創建一些交互式折線圖、條形圖和餅圖,以及一個散點圖。 ● 第11章介紹如何實現基于服務器端的可視化,并通過無頭瀏覽器使其可以在服務器端正常使用。當你在自己的開發工作站執行探索性數據分析時,這種技術非常有用。此外,它還可用于預呈現圖表以便在網頁中顯示,以及呈現PDF報告以便自動分發給用戶。 ● 第12章中,我們通過將前面各章中的多種技術整合成一個接近生產就緒狀態并可實際使用的系統,實際構建一個數據處理流程。我們將構建一個空氣質量監測系統。一個傳感器會將實時數據輸入到我們的處理流程中,在流程中經過處理后,會根據設定的條件發布SMS警報,并自動生成報告,然后在瀏覽器中實時更新可視化結果。 ● 第13章進一步擴展了我們的可視化技能。介紹了D3的基本知識,D3是JavaScript生態系統中最著名的可視化工具包。這個工具包非常復雜,不過,我們可以利用它實現很多令人難以置信的自定義可視化效果。 ● 第14章是《JavaScript數據整理》的最后一章,將帶我們進入生產環境。我們將了解進入生產環境時需要面對的各種難題,并學習一些基本的策略,以幫助我們將應用交付給對應的受眾。 你可從每個資源庫對應的網頁中下載每章代碼的ZIP壓縮文件。另外,也可在學習《JavaScript數據整理》的過程中使用Git復制每個資源庫。可以使用任何現成的代碼,并以此為基礎完成自己的實踐工作或項目,這可以節省大量時間。我已經對每個代碼示例進行了一些優化處理,使其盡可能簡單,并且盡量完整包含所需的各種內容。 《JavaScript數據整理》中的絕大多數代碼都是在Node.js上運行的,并且使用的是適用于最新版本JavaScript的語法。其余代碼則在瀏覽器中運行。這部分代碼原本設計用來在舊版瀏覽器中運行,因此,對應的語法與Node.js代碼有一點點不同。在撰寫《JavaScript數據整理》時,我使用的是Node.js版本8和9,然而,當你閱讀《JavaScript數據整理》時,很可能已經發布了新版本。如果你在代碼中發現任何問題,歡迎給我提供反饋信息,只需要在相關的資源庫網頁上提交問題即可。 《JavaScript數據整理》中包含很多源代碼示例,這些示例既有編號代碼清單形式,也有普通文本行形式。不管是哪種形式,源代碼都采用固定寬度字體格式,以便與普通文本區分。有時,代碼還會采用粗體格式,以便突出顯示與相應章節中之前的操作步驟相比哪些發生了更改,例如向現有代碼行中添加新功能時,會對其進行相應的更改。 在很多情況下,我們對原始的源代碼已經進行了格式上的調整,添加了一些換行符,并調整了縮進,以便適合《JavaScript數據整理》中可用的頁面空間。在少數情況下,這樣做仍然不夠,那么我們需要在代碼清單中包含續行符標記(?)。此外,當在文本中介紹代碼時,通常會將源代碼中的注釋刪掉。很多代碼清單都會附帶代碼注釋,用于重點介紹一些比較重要的概念。 圖書論壇 購買《JavaScript數據整理》后即可免費訪問Manning出版社運營和維護的專用Web論壇,在這里,你可以針對《JavaScript數據整理》發表自己的評論,詢問一些技術上的問題,并且可以從作者和其他用戶那里獲得相關的幫助。如果想要訪問此論壇。此外,你還可以訪問以下網址,了解有關Manning論壇以及行為規范的更多信息。 Manning會保證為讀者提供一個專門的場所,以供各個讀者以及讀者與作者之間進行一些有意義的對話和交流。這一承諾并不是對作者參與論壇討論和交流的強制規定,作者是否參與以及參與的頻繁程度完全由作者自己決定,并且是無償的。我們建議你試著向作者問一些具有挑戰性的問題,以引起作者的重視并使其足夠專注。對于已經出版發行的圖書,可以在出版商的網站上訪問對應的論壇以及之前相關討論的歸檔文件。 其他在線資源 讀者朋友可通過訪問Ashley Davis的博客,名為The Data Wrangler。Data-Forge Notebook是Ashley Davis專門為使用JavaScript進行數據分析和轉換而開發的產品。從概念上來說,它與古老的Jupyter Notebook有些類似,但主要用于JavaScript。 |