『对比Excel,轻松学习Python数据分析』新书发布
之前在公眾號提過,我寫了一本書,現(xiàn)在這本書終于面世了,這本書就是『對比Excel,輕松學習Python數據分析』,這本書是寫什么的,以及這本書怎么寫的,相信大家通過書名就能了解一二,但還是有必要專門寫一篇文章來詳細介紹一下。
1.本書簡介
集Python、Excel、數據分析為一體是本書的一大特色。
本書圍繞整個數據分析的常規(guī)流程:熟悉工具—明確目的—獲取數據—熟悉數據—處理數據—分析數據—得出結論—驗證結論—展示結論進行Excel和Python的對比實現(xiàn),告訴 你每一個過程中都會用到什么,過程與過程之間有什么聯(lián)系。本書既可以作為系統(tǒng)學習數 據分析操作流程的說明書,也可以作為一本數據分析師案頭必備的實操工具書。
本書通過對比Excel功能操作去學習Python的代碼實現(xiàn),而不是直接學習Python代碼,大大降低了學習門檻,消除了讀者對代碼的恐懼心理。適合剛入行的數據分析師,也適合對Excel比較熟練的數據分析師,以及從事其他崗位想提高工作效率的職場人。
2.為什么要寫這本書
本書既是一本數據分析的書,也是一本Excel數據分析的書,同時還是一本Python數據分析的書。在互聯(lián)網上,無論是搜索數據分析,還是搜索Excel數據分析,亦或是搜索Python數據分析,我們都可以找到很多相關的圖書。既然已經有這么多同類題材的書了,為什么我還要寫呢?因為在我準備寫這本書時,還沒有一本把數據分析、Excel 數據分析、Python數據分析這三者結合在一起的書。
為什么我要把它們結合在一起寫呢?那是因為,我認為這三者是一個數據分析師必備的技能,而且這三者本身也是一個有機統(tǒng)一體。數據分析讓你知道怎么分析以及分析什么;Excel和Python是你在分析過程中會用到的兩個工具。
3.為什么要學習Python
既然Python在數據分析領域是一個和Excel類似的數據分析工具,二者實現(xiàn)的功能都一樣,為什么還要學 Python,把Excel學好不就行了嗎?我認為學習Python的主要原因有以下幾點:
1.在處理大量數據時,Python的效率高于Excel
當數據量很小的時候,Excel和Python的處理速度基本上差不多,但是當數據量較大或者公式嵌套太多時,Excel 就會變得很慢,這個時候怎么辦呢?我們可以使用Python,Python對于海量數據的處理效果要明顯優(yōu)于 Excel。用Vlookup函數做一個 實驗,兩個大小均為23MB的表(6 萬行數據),在未作任何處理、沒有任何公式嵌套之前,Excel中直接在一個表中用 Vlookup 函數獲取另一個表的數據需要20秒(我的 計算機性能參數是 I7、8GB 內存、256GB 固態(tài)硬盤),配置稍微差點的計算機可能打開這個表都很難。但是用Python實現(xiàn)上述過程只需要580毫秒,即 0.58 秒,是 Excel 效率的 34 倍。
2.Python可以輕松實現(xiàn)自動化
你可能會說Excel的VBA也可以自動化,但是VBA主要還是基于Excel內部的 自動化,一些其他方面的自動化VBA 就做不了,比如你要針對本地某一文件夾下面的文件名進行批量修改,VBA就不能實現(xiàn),但是Python可以。
3.Python可用來做算法模型
雖然你是做數據分析的,但是一些基礎的算法模型還是有必要掌握的,Python可以讓你在懂一些基礎的算法原理的情況下就能搭建一些模型,比如你可以使用聚類算法搭建一個模型去對用戶進行分類。
4.為什么要對比Excel學習Python
Python雖然是一門編程語言,但是在數據分析領域實現(xiàn)的功能和Excel的基本功 能一樣,而Excel又是大家比較熟悉、容易上手的軟件,所以可以通過Excel數據分析去對比學習Python數據分析。對于同一個功能,本書告訴你在Excel中怎么做,并告訴你對應到Python中是什么樣的代碼。例如數值替換,即把一個值替換成另一個值, 對把“Excel”替換成“Python”這一要求,在Excel中可以通過鼠標點選實現(xiàn),如下圖所示。:
在 Python 中則通過具體的代碼實現(xiàn),如下所示:
df.replace(“Excel”,”Python”)#表示將表df中的Excel替換成Python?本書將數據分析過程中涉及的每一個操作都按這種方式對照講解,讓你從熟悉的Excel操作中去學習對應的 Python實現(xiàn),而不是直接學習Python代碼,大大降低了學習門檻,消除了大家對代碼的恐懼心理。這也是本書的一大特色,也是我為什么要寫本書的主要原因,就是希望幫助你不再懼怕代碼,讓你可以像學Excel數據分析一 樣,輕松學習Python數據分析。
5.本書目錄
本書分為三篇,入門篇主要講數據分析的一些基礎知識,介紹數據分析是什么,為什么要做數據分析,數據分析究竟在分析什么,以及數據分析的常規(guī)流程;實踐篇圍繞數據分析的整個流程,為了讓大家便于理解,又將數據分析整個過程與買菜做飯相聯(lián)系,分別介紹每一個步驟中的操作,這些操作用Excel如何實現(xiàn),用Python又如何實現(xiàn);進階篇:介紹幾個實戰(zhàn)案例,讓你體會一下在實際業(yè)務中如何使用Python。
入門篇
第 1 章 ?數據分析基礎
實踐篇
第 2 章 ?熟悉鍋——Python 基礎知識
第 3 章 ?Pandas 數據結構
第 4 章 ?準備食材——獲取數據源
第 5 章 ?淘米洗菜——數據預處理
第 6 章 ?菜品挑選——數據選擇
第 7 章 ?切配菜品——數值操作
第 8 章 ?開始烹調——數據運算
第 9 章 ?炒菜計時器——時間序列
第 10 章 ?菜品分類——數據分組/數據透視表
第 11 章 ?水果拼盤——多表拼接
第 12 章 ?盛菜裝盤——結果導出
第 13 章 ?菜品擺放——數據可視化
進階篇
第 14 章 ?典型數據分析案例
第 15 章 ?NumPy數組
6.專家推薦
來看看一些行業(yè)大佬怎么講,在此再次感謝為這本書寫推薦的各位老師。
數據分析的門檻可以很高,也可以很低,但它一定很重要!這本書不是晦澀難懂的學術教材,而是適合不同層次職場人士學習的工具書,通俗易懂的闡述了數據分析的基礎及在不同工具下的主要實踐,對于初學者或是資深數據愛好者都有很好的啟發(fā)和助益。
by--黃小偉 有贊數據分析團隊負責人/R語言中文社區(qū)創(chuàng)始人
大數據時代,數據分析是每個職場人士的必備技能之一,你掌握了嗎?本書以一種人人都熟悉的炒菜的故事作為主線,用輕松的語言深入淺出的講述數據分析的各個核心要素,是初入數據分析領域的同學一個很好的入門教材,同時也是有一定分析經驗同學的參考工具書。
by--黃崇杰 平安壹錢包數據營銷總監(jiān)
數據分析工作中的80%以上的時間都在處理底層數據。一份“高大上”的報告實際上只占了分析師不到20%的時間。張老師的這本書出現(xiàn)的正是時候——Excel好用但是在大數據是的效率低,但是結合上Python的能力以后,會讓分析師如虎添翼。數據分析師們動動手指產出INSIGHT的美好時光指日可待了!
by--劉洋 阿里巴巴高級產品專家
本書為傳統(tǒng)數據分析人員邁向大數據時代指明方向,并終將帶來競爭優(yōu)勢
by--閔軍 找鋼網數據中心總經理
一本少見的結合了Excel及Python來學習數據分析的好書。作為基本的數據分析工具,Excel技能及Python技能的掌握,對于數據分析師來說都是十分必要的,相信任何一個有志于學習數據分析的朋友,都能從此書收獲良多。
by--張浩彬 廣東柯內特環(huán)境科技有限公司首席數據科學家
本書是實用并且可操作,通過Python來分析數據,從書中內容看出作者在陳列操作步驟過程中包括了大量的分析思維,對于那些想轉型或者入門想從事數據分析的同學,是一步很好的教材級書本。
by--趙良 中國統(tǒng)計網聯(lián)合創(chuàng)始人
作為這幾年最火的語言之一,Python在數據分析方面的能力幾乎是無限的,可能唯一的限制就在于使用者本身的能力和認知。對數據分析師而言,用Python做數據分析已經成為必需技能。這本Python數據分析基于熟知的Excel做對照和解釋,深入淺出,娓娓道來。既兼顧到不同工具的應用場景,又將使用技巧融入其中。推薦剛入門的數據分析師閱讀。
by--宋天龍 《Python數據分析與數據化運營》作者
Excel與Python都是數據分析利器,本書從Excel與Python的實際作用出發(fā),書中的知識都是作者多年一線工作的經驗總結。
by-- 王穎祥 永輝超市大數據合伙人
7.本書樣章
全書采用對比Excel操作的方式來講解Python代碼,以下為書中介紹數據透視表的部分內容:
數據透視表實現(xiàn)的功能與數據分組相類似但又不同,數據分組是在一維(行)方向上不斷進行拆分,而數據透視表是在行列方向上同時進行拆分。
下圖為數據分組與數據透視表的對比圖:
數據透視表不管是在Excel還是Python中都是一個很重要的功能,大家都需要熟練掌握。
Excel實現(xiàn)
Excel中的數據透視表在插入菜單欄中,選擇插入透視表以后就會看到下圖的界面。下圖左側為數據表中的所有字段,右側為數據透視表選項,把左側字段拖到右側對應的框中即完成了數據透視表的制作。
下圖為讓客戶分類作為行標簽,區(qū)域作為列標簽,用戶ID作為值,且值字段的計算類型為計數的結果。
在數據透視表中把多個字段作拖到行對應的框作為行標簽,把多個字段拖到列對應的框作為列標簽,把多個字段拖到值對應的框作為值,且可以對不同的值字段選擇不同的計算類型,大家自行練習。
Python實現(xiàn)
在Python中的數據透視表制作原理與Excel制作原理是一樣的。Python中的數據透視表用到的是pivot_table()方法。
pivot_table的全部參數如下:
pd.pivot_table(data,?values=None,?index=None,?columns=None,?aggfunc='mean',fill_value=None,?margins=False,?dropna=True,?margins_name='All')#data表示要做數據透視表的整個表 #values對應Excel中值那個框 #index對應Excel中行那個框 #columns對應Excel中列那個框 #aggfunc表示對values的計算類型 #fill_value表示對空值的填充值 #margins表示是否顯示合計列 #dropna表示是否刪除缺失,一整行全為缺失值 #margins_name表示合計列列名接下來看一些具體實例:
客戶分類作為index,區(qū)域作為columns,用戶ID作為values,對values執(zhí)行count運算運行結果:
>>>pd.pivot_table(df,values?=?"用戶ID",columns?=?"區(qū)域",index?=?"客戶分類",aggfunc='count') 區(qū)域????一線城市??三線城市??二線城市 客戶分類???????????? A類????????1.0???????NaN???????2.0 B類????????NaN???????2.0???????NaN C類????????1.0???????NaN???????NaN上面的運行結果和Excel的不同的就是沒有合計列,Python透視表中的合計列默認是關閉,讓其等于True就可以顯示出來。
pd.pivot_table(df,values?=?"用戶ID",columns?=?"區(qū)域",index?=?"客戶分類",aggfunc='count',margins?=?True) 區(qū)域????一線城市??三線城市??二線城市??All 客戶分類???????????????? A類????????1.0???????NaN???????2.0???????3 B類????????NaN???????2.0???????NaN???????2 C類????????1.0???????NaN???????NaN???????1 All????????2.0???????2.0???????2.0???????6合計列名稱默認為All,可以通過設置參數margins_name的值進行修改。
pd.pivot_table(df,values?=?"用戶ID",columns?=?"區(qū)域",index?=?"客戶分類",aggfunc='count',margins?=?True,margins_name?=?"總計") 區(qū)域????一線城市??三線城市??二線城市??總計 客戶分類???????????????? A類????????1.0???????NaN???????2.0???????3 B類????????NaN???????2.0???????NaN???????2 C類????????1.0???????NaN???????NaN???????1 總計???????2.0???????2.0???????2.0???????6NaN表示缺失值,我們可以通過設置參數fill_value的值對缺失值進行填充。
#將缺失值填充為0 pd.pivot_table(df,values?=?"用戶ID",columns?=?"區(qū)域",index?=?"客戶分類",aggfunc='count',margins?=?True,fill_value?=?0) 區(qū)域????一線城市??三線城市??二線城市??All 客戶分類???????????????? A類????????1?????????0?????????2?????????3 B類????????0?????????2?????????0?????????2 C類????????1?????????0?????????0?????????1 All????????2?????????2?????????2?????????6aggfunc用來表示計算類型,當只傳入一種類型時,表示對所有的值字段都進行同樣的計算;如果需要對不同的值進行不同的計算類型,需要傳入一個字典,鍵為列名,值為計算方式,下面對用戶ID進行計數、對7月銷量進行求和:
pd.pivot_table(df,values?=?["用戶ID","7月銷量"],,columns?=?"區(qū)域",index?=?"客戶分類",aggfunc={"用戶ID":"count","7月銷量":"sum"})7月銷量????????????????????????用戶ID 區(qū)域?一線城市?三線城市?二線城市????一線城市?三線城市???二線城市 客戶分類???????????????????????? A類?????6.0??????NaN??????50.0?????1.0??????NaN????????2.0 B類?????NaN??????46.0?????NaN??????NaN??????2.0????????NaN C類?????7.0??????NaN??????NaN??????1.0??????NaN????????NaN為了便于進一步的分析與處理,我們一般對數據透視表的結果也會重置索引,利用的方法同樣是reset_index()。
pd.pivot_table(df,values?=?"用戶ID",columns?=?"區(qū)域",index?=?"客戶分類",aggfunc='count') 區(qū)域????一線城市??三線城市??二線城市 客戶分類???????????? A類????????1.0???????NaN???????2.0 B類????????NaN???????2.0???????NaN C類????????1.0???????NaN???????NaN pd.pivot_table(df,values?=?"用戶ID",columns?=?"區(qū)域",index?=?"客戶分類",aggfunc='count').reset_index() 區(qū)域????客戶分類????????一線城市????????三線城市????????二線城市 0????????A類??????????1.0?????????NaN?????????2.0 1????????B類??????????NaN??????????2.0????????NaN 2????????C類??????????1.0?????????NaN?????????NaN8.福利時刻
福利1
在微信公眾號后臺回復『我想試讀』,即可獲得本書試讀部分+Python數據分析師知識圖譜電子版一份。
福利2
購買紙質書可獲得以下福利:
1、贈送紙質Python數據分析師知識圖譜一份
2、贈送價值89元的『入職數據分析師』電子書一份
3、贈送價值99元的『數據分析師入職第一課』視頻課程一套
4、加入讀者群與作者隨時交流
5、加入我組建的打卡圈子,30天學會Python數據分析
tip:可加入讀者群咨詢上述福利獲取方式
數據分析師入職第一課
9.購買方式
目前書籍已經在京東、淘寶、當當網全面上線,大家搜索『對比Excel,輕松學習Python數據分析』即可進行購買,請認準小黃書哦。也可以直接掃描下方二維碼進行購買,本書目前在當當網可以享受滿100減50的活動哦。
如果你已經購買了紙質書,可添加我為好友(請備注“讀者”),我會邀請你進讀者群,同時也會邀請你進入打卡圈子,30天帶你學會Python數據分析,有任何關于書相關的問題也都可以咨詢我。
個人微信
總結
以上是生活随笔為你收集整理的『对比Excel,轻松学习Python数据分析』新书发布的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谷歌推出 AI 一键 P 图工具 Mag
- 下一篇: Python基础语法:数据类型、进制转换