
韋斯·麥金尼
閱讀本書可以獲得關於在Python下操作、處理、清洗、規整數據集的完整說明。本書第2版針對Python 3.6進行了更新,並增加了實際案例向你展示如何高效地解決一系列數據分析問題。你將在閱讀過程中學習到最新版本的pandas、NumPy、IPython和Jupyter。
這是陪伴我走過至暗時刻的一本課本書籍,對我來說意義非凡,因爲一定程度上治癒了我的心理問題,或者可以說是改善了不良腦回路?經歷了兩次重度抑鬱,並不後悔帶它見證我一段人生路途中的艱辛、坎坷甚至是狼狽。正因爲人都有理想,所以該你經歷的事情總得一件也不落下去經歷一遍,方能堅定真正理想。抑鬱症可能會伴隨着我終身,但這也並不妨礙每一次我的向前邁步。首先你得自己看得起自己,再者看清你的價值根本不需要過勞去證明(身心透支),接着去奏響由柴米油鹽醬醋茶譜成的生活主旋律吧,最終它們將穩穩當當地契合上音階裏do re mi fa sol la si七個音符,這便是理想與現實之間的奇妙聯繫。每一個來時的自己都不會被我所厭棄,如我對這本“無生命”卻有靈的書的情感一樣,不因知識而傲慢恰恰是閱讀後真實的成長,其核心價值。It’s my dream still, not a lie for sale. 我的目標是完成人生的交響樂,活成一首幸福的詩歌。收穫意外的自我突破,舞出精彩跳得暢快,而不是爭奪比賽的第一名。知識並不難學,只需要你尊重它。 (我看書是爲了緩慢增長知識練邏輯,不是爲了快速升職發財臭顯擺!!!!!我的書評更加不會是誰的AI選書篩子!這都已經活在兩個絲毫不相干的世界了,你看不懂 能怪我嗎?啊!)
一本好書,相當基礎,很適合回顧一些基本細節 還是那句話,每一個工具有它最擅長的地方,雖然Python能做很多東西,但是能用Excel,能用BI,能用SQL,爲什麼要走彎路呢? 另外,工具最終也是爲業務服務的,業務Sense還是排第一位,你需要體系化的深度的思考,你也一定會有體系化的深度的思考。 這些內容結合你對工具的熟練使用,最終成爲了你的背書。 系統梳理了一些pandas包的常用命令,供自己和你隨時取用。 1、Series/DataFrame生成數組型對象,其中重要的參數data/index/columns pd.Sereis([1,2,3,4]) 生成[1,2,3,4]的Series數組 2、isnull/notnull檢查缺失數據 pd.isnull(df)/df.isnull() 逐個檢查df中的元素是否爲NA 3、head默認選出頭部的五行 df.head() 4、reindex用於創建一個符合新索引的新對象,默認修改行索引,利用columns參數修改列索引 df.reindex(columns=['zh','wu','c']) 按照abc的順序重建索引,注意不會修改原來的數據,如果是新加的索引,則對應數據爲NA 5、drop刪除數據(默認軸0) inplace=True直接清除被刪除的數據 df.drop(['qi','wa'],axis=1) 刪除ab兩列數據,注意原df數據不變 6、loc軸標籤切片 df.loc['c':'e','wu':'wa'] 兩端閉區間,輸出三行三列數據 7、iloc整數標籤切片 df.iloc[3:5,2:3] 左閉右開,輸出兩行一列數據 8、describe一次性產生多個匯總統計 df.describe() 常用來看df的概覽情況 9、sum/count/mean/cumsum求和/計數/平均/累加 df.sum(axis=1) 沿着列方向進行求和操作 10、corr相關係數,一列和另一列的相關係數 df.corr()、df.cov(),以DataFrame的形式返回相關性和協方差 df.zh.corr(df.qi)df['zh'].corr(df['wa']) 兩種寫法均可,都是有效的Python屬性 11、value_counts計算Series中元素出現的個數,按照降序排序 df['qi'].value_counts() 計算'qi'列中不同元素的個數 12、read_csv/read_excel從相關文件中讀取分隔好的數據 df_xz = pd.read_excel(r'D:\python\test1.xlsx') 很多參數和細節,特別是中文路徑,以及分隔符等等 13、dropna默認刪除包含缺失值的行 how='all'爲刪除所有值爲NA的行 df.dropna(how='all',axis=1) 刪除元素全爲NA的列 14、fillna補全缺失值 inplace=True直接修改已經存在的對象method:根據上一個值ffill或者下一個值bfill來插值 df.fillna(value=df.apply(lambda x:x.mean()),axis=0) 沿着橫軸方向(計算每一列的平均值),將其填充在當下列的NA中 15、cut/qcut離散化和分箱,qcut爲等長分箱 x:必須是一維數組bins:分成幾組right:表示右邊是開放還是閉合,默認閉合labels:自定義箱名precision:定義精度,比如2代表兩位小數 pd.cut(score,[0,60,80,90,100],right=False,labels=['差','中','良','優秀']) 將分數score按照制定的分組分成優良中差四組 16、merge根據一個或多個鍵將行進行連接 left/right:左右merge的df分別是什麼on:關聯的列名是什麼,可用left_on和right_on分別指定how:關聯關係,默認inner內關聯,還有left/right/outer pd.merge(df1,df2,on=['name','key'],how='left'] 連接df1和df2,通過name和key兩個字段進行左關聯 17、concat拼接數據 axis:默認爲0,沿着行拼接,axis=1沿着列拼接 pd.concat([df,df.loc[:,['wa']]]) 將df和df的wa列數據按照行進行拼接 18、groupby聚合生成groupby對象 by:按照什麼字段聚合函數:count/sum/mean/median/std/min/max/prod,或自定義函數agg/aggregate:將函數傳遞給該方法,grouped.agg(lambda x:x.max()-x.min()),將一個極值算法傳遞給生成的groupby對象 df['zh'].groupby(df['key'].sum()或者是df.groupby(['key'])[['zh','wa']].sum() 按照key列對df的zh列數據進行求和 19、sort_values沿着特定軸對數字進行排序 by:按照那列的數據排序axis=0:默認按照行排序ascending:默認降序 df.sort_values(by=['qi','wa']) 按照qi和wa兩列,對df進行排序 20、sample隨機抽樣 n:取幾個數 df.sample(5) 隨機抽取DataFrame或Series的5行數據
韋斯是pandas的原創者。pandas是一種流行的Python數據處理工具。我們在第2章中看到過這個工具。pandas是Python中任何數據科學工作流的核心組件。在可預見的將來,它仍將發揮作用。絕對值得你花時間學習它所提供的工具和相關知識。
是pandas的入門指南,不是數據科學的入門指南。優點是面對不同數據處理問題,pandas的處理手段介紹的很詳細。書裏借鑑了hadley對數據分析問題的基本抽象即拆分,分析,合併來描述pandas語法很有條理性。缺點大概有兩個,一個是對語法細節着墨過多,如果是新手可能會限在語法裏而抓不住數據分析任務主要處理框架。二是作爲17年的書裏面很多例子用到的類已經被棄用,作者在自己主頁放了搶先的第三版,改進了這個問題。 從我個人來說,其實如果是數據分析入門在學會了python/R的語法後,hadley的r4ds可能更適合入門。r4ds更重視的是整個數據分析過程的大框架:數據導入>整潔>(|變形>可視化>建模>|)>交流。在流程的每個節點上介紹tidyverse的語法。讀完以後腦子理由就好像有了一個數據分析任務的探索地圖,即便某個語法不記得了也能按圖索驥去檢索。
#利用python進行數據分析 通過掌握python變成、NumPy庫、pandas庫以及IPython、Jupyter等工具,可以進行數據處理、清洗、規整、可視化以及建模等分析工作。Anaconda3中自帶1000多個數據分析的包,或者選擇精簡版的Miniconda,安裝過程中最好將其加入到系統環境變量,配置好環境後就可以根據書中的代碼示例進行練習。
中規中矩的一本技術書吧。大部分講的是幾個庫的使用,一邊看一邊跟着敲到後來頭昏腦脹,後面幾章大致翻了翻都跳了,等到要用的時候不如再直接查官方文檔。收穫最大的反而是前幾章把Python基本語法複習了下,以及介紹ipython的使用方法。 圖書館把這本書的第一版是放到了統計學的架子上,也是沒怎麼學過統計學和數據分析,所以很多地方不是看不懂就是不知道有啥用,畢竟這本書沒怎麼講原理。感覺很多例子也不夠好,自己跟着把例子改了改才懂。最後,嚴重譴責一下作者不講jupyter notebook的使用方法,跟着書敲到了一半後才發現有多好用。[流淚][流淚][流淚]
本書由Python pandas項目創始人Wes McKinney親筆撰寫,詳細介紹利用Python進行操作、處理、清洗和規整數據等方面的具體細節和基本要點。第2版針對Python 3.6進行全面修訂和更新,涵蓋新版的pandas、NumPy、IPython和Jupyter,並增加大量實際案例,可以幫助你高效解決一系列數據分析問題。
春節假期肝完了,每行代碼基本都敲了,感覺是過的最有意義的一個春節了,內容和結構都很好。但是翻譯真的很差,非常多地方都很難懂,都要藉助ai才能理解。 第一遍都理解了,但是有遺忘,應用估計也不太行,後續複習就通過python金融大數據那本吧。 不過先看因子的書了,幾年行研從業零數學編程基礎學量化,就算跪着量化這門也要進去😂
如果不拿pandas用於實際工作中的話,會覺得這本書一般般,但如果真的需要用到pandas了,這本書絕對是五星好評的必讀書籍!還得需要舉一反三多熟練!
如果你看到代碼中出現 ....:或....:感到困惑,其實它並沒有特殊含義,只是因爲一行寫不下,在排版中表示緊跟着上一行的內容。IN表示輸入行,OUT表示輸出行,中括號[ ]內的數字表示行號,很多代碼在上下文中是呼應的,所以看行號方便找關聯代碼。O記的書多讀幾遍還是蠻舒服的,只是本書排版最開始不好接受,現在已經很熟悉,而且感覺還不錯。