根據Cummulus Media 2018年的數據,全球每分鐘向谷歌發起370萬次搜索,發送1800萬條短信,YouTube上有430萬條視頻被觀看,Facebook登錄超過97萬次,等等。人們刷微博、聊微信、用滴滴打車、用淘寶購物、用美團點外賣,每一條信息,每一次出行,每一次消費,每一次互動都成為其數字足跡!未來已來,我們進入了數據時代!
本人與數據正式結緣還要追溯到2003年擔任軟件項目經理時,當時分析項目團隊的軟件問題成為我的個數據分析任務。2009年,我開始管理多個產品的全球支持團隊,與數據的關繫更進了一步。作為通信設備商,我們的客戶支持有本地技術支持、歐洲及美洲等區域技術支持以及全球技術支持。每層的技術人員解決的問題類型、難度、時間以及成本都不同,電信運營商的設備故障每分每秒都將給客戶帶來巨大影響。面對成千上萬的客戶問題,如何快速、高效、低成本地處理各種問題,需要用數據來幫助我們做出決策。2013年後,我開始轉向負責軟件維護業務,此時我關心的是: 如何從軟件維護中獲取更多收入; 如何更好地提高客戶服務質量; 針對全球的客戶,如何對客戶進行細分; 哪些客戶的維護業務對公司更有價值; 面對客戶時如何說服他們維護業務帶來的價值遠遠超過了成本。這一切更需要數據來支持!
不僅工作中需要數據思維,我們的生活也需要數據思維,它可以幫我們找工作、買房、從投資中獲利,等等。那麼什麼是數據思維?數據思維核心的思想是利用數據解決問題,而利用數據解決問題則需要深度了解需求,了解真正要解決什麼樣的問題,解決問題背後的真實目的是什麼。在解決問題的過程中,
使用數據分析的方法,幫助我們從龐雜的數據中提取有價值的信息,做出更好的決策,本書正是圍繞此目標而編寫。全書分上下兩篇。上篇(第1章~第10章)介紹了什麼是數據分析,如何利用Python中的Pandas庫進行基本的數據操作、數據清洗、數據整理,如何對數據進行可視化。下篇(第11章~第21章)著重於數據分析實戰,
盡可能多地為讀者展示各種數據分析應用,目的是讓讀者體會到數據分析的作用
。其中既有數據分析在企業中的應用,如客戶群組分析、客戶細分、A/B測試等,又有數據分析在我們生活中的應用,
如找工作、買房、投資等。通過這些案例,希望讀者能夠理解數據分析是沒有邊界的,隻要能提出問題,就能找到它的用武之地。
隨著可穿戴設備的興起,
物聯網、人工智能伴隨5G而來,用數據定義問題、用數據講故事、用數據支持決策的能力也越來越重要,本書是作者對過去學習與工作的總結,希望能成為讀者邁入數據世界的本書。
本書第7章、第14章和第15章由鄒靜完成,其餘章節由江雪松完成。由於作者水平有限,書中難免有不足之處,還望讀者
不吝指正!
感謝清華大學出版社的盛東亮老師為出版本書提供的幫助!同時也要感謝本書編輯
團隊付出的辛勤勞動!將近一年時間的寫作,意味著無法陪伴家人,在此也要感謝他們的理解與支持。
江雪松
2020年4月
說明
1. 寫作風格
本書上篇為Pandas數據分析基礎,因此作者對於代碼的講解相對詳細。下篇為案例實戰,經過上篇的學習,
讀者應該已經具備了自學Pandas中新函數的能力,因此在講解時以案例為主,對部分代碼不再逐行解讀,希望讀者能自己動手實踐,加深理解。
2. 英文術語的翻譯
本書中的英文術語在兩種情況不進行翻譯,采取保留英文原文的方式。種情況是專有術語,無中文翻譯,
如Pandas、Jupyter Notebook等。第二種情況是Pandas中的專有數據結構DataFrame和Series,采取不翻譯的方式,另外對於DataFrame中的Index,如果可能在上下文產生歧義,我們會采取保留英文原文的方式。
3. 代碼格式
本書中的代碼均在Jupyter Notebook中編寫完成,Jupyter Notebook的一大優勢是提供了良好的用戶交互輸出。為了更好地區分代碼與輸出,全書中的代碼采用如下格式。
retail_data.dtypes
InvoiceNo object
StockCodeobject
Countryobject
Total_pricefloat64
dtype: object
其中,前面帶有“”的代表Jupyter Notebook中的一段代碼。例如,上面代碼段中的“retail_data.dtypes”代表的是一行代碼,前面沒有“”的部分則代表了代碼對應的輸出。類似地,如下內容中“”後面代表的是一段代碼。
def rad_to_degrees(x, pos):
'角度幅度轉換'
#兩個參數分別是值與tick位置
return round(x * 57.2985, 2)
4. 全書代碼與數據下載
由於本書是一本數據分析實戰的書,因此書中大量使用了各種不同真實場景的數據和代碼,為了方便讀者學習,我們也提供了數據和代碼下載。讀者可以關注微信公眾號“見數知理”獲得代碼與數據的下載方式。
讀者完成代碼與數據下載後,如果按照本書第2章的方式設置了Jupyter Notebook,那麼請將數據放到data目錄,該目錄應該與代碼目錄平級。
5. 勘誤表
全書的勘誤將通過公眾號發布,讀者閱讀本書若發現任何問題,也歡迎通過公眾號與我們交流。
學習說明: 請關注“人智能科學與技術”公眾號,了解本書及後續可能更新的學習資源。
作者 2020年8月