<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          聊聊Pandas的前世今生

          共 4308字,需瀏覽 9分鐘

           ·

          2021-06-09 01:57

          本文將從Python生態(tài)、Pandas歷史背景、Pandas核心語法、Pandas學習資源四個方面去聊一聊Pandas,期望能帶給大家一點啟發(fā)。

          一、Python生態(tài)里的Pandas

          五月份TIOBE編程語言排行榜,Python追上Java又回到第二的位置。Python如此受歡迎一方面得益于它崇尚簡潔的編程哲學,另一方面是因為強大的第三方庫生態(tài)。

          要說殺手級的庫,很難排出個先后順序,因為python的明星庫非常多,在各個領域都算得上出類拔萃。

          比如web框架-Django、深度學習框架-TensorFlow、自然語言處理框架-NLTK、圖像處理庫-PIL、爬蟲庫-requests、圖形界面框架-PyQt、可視化庫-Matplotlib、科學計算庫-Numpy、數據分析庫-Pandas......

          上面大部分庫我都用過,用的最多也最順手的是Pandas,可以說這是一個生態(tài)上最完整、功能上最強大、體驗上最便捷的數據分析庫,稱為編程界的Excel也不為過。

          Pandas在Python數據科學鏈條中起著關鍵作用,處理數據十分方便,且連接Python與其它核心庫。

          二、十項全能的Pandas

          Pandas誕生于2008年,它的開發(fā)者是Wes McKinney,一個量化金融分析工程師。

          因為疲于應付繁雜的財務數據,Wes McKinney便自學Python,并開發(fā)了Pandas。

          大神就是這么任性,沒有,就創(chuàng)造。

          為什么叫作Pandas,其實這是“Python data analysis”的簡寫,同時也衍生自計量經濟學術語“panel data”(面板數據)。

          所以說Pandas的誕生是為了分析金融財務數據,當然現在它已經應用在各個領域了。

          ?

          2008: Pandas正式開發(fā)并發(fā)布 

          2009:Pandas成為開源項目 

          2012: 《利用Python進行數據分析》出版 

          2015: Pandas 成為 NumFOCUS 贊助的項目

          ?

          Pandas能做什么呢?

          它可以幫助你任意探索數據,對數據進行讀取、導入、導出、連接、合并、分組、插入、拆分、透視、索引、切分、轉換等,以及可視化展示、復雜統(tǒng)計、數據庫交互、web爬取等。

          同時Pandas還可以使用復雜的自定義函數處理數據,并與numpy、matplotlib、sklearn、pyspark、sklearn等眾多科學計算庫交互。

          Pandas有一個偉大的目標,即成為任何語言中可用的最強大、最靈活的開源數據分析工具。

          讓我們期待下。

          三、Pandas核心語法

          1.  數據類型

          Pandas的基本數據類型是dataframe和series兩種,也就是行和列的形式,dataframe是多行多列,series是單列多行。

          如果在jupyter notebook里面使用pandas,那么數據展示的形式像excel表一樣,有行字段和列字段,還有值。

          2. 讀取數據

          pandas支持讀取和輸出多種數據類型,包括但不限于csv、txt、xlsx、json、html、sql、parquet、sas、spss、stata、hdf5

          讀取一般通過read_*函數實現,輸出通過to_*函數實現。

          image
          image

          3. 選擇數據子集

          導入數據后,一般要對數據進行清洗,我們會選擇部分數據使用,也就是子集。

          在pandas中選擇數據子集非常簡單,通過篩選行和列字段的值實現。

          具體實現如下:

          4. 數據可視化

          不要以為pandas只是個數據處理工具,它還可以幫助你做可視化圖表,而且能高度集成matplotlib。

          你可以用pandas的plot方法繪制散點圖、柱狀圖、折線圖等各種主流圖表。

          5. 創(chuàng)建新列

          有時需要通過函數轉化舊列創(chuàng)建一個新的字段列,pandas也能輕而易舉的實現

          image

          6. 分組計算

          在sql中會用到group by這個方法,用來對某個或多個列進行分組,計算其他列的統(tǒng)計值。

          pandas也有這樣的功能,而且和sql的用法類似。

          image

          7. 數據合并

          數據處理中經常會遇到將多個表合并成一個表的情況,很多人會打開多個excel表,然后手動復制粘貼,這樣就很低效。

          pandas提供了merge、join、concat等方法用來合并或連接多張表。

          小結

          pandas還有數以千計的強大函數,能實現各種騷操作。

          python也還有數不勝數的寶藏庫,等著大家去探索

          三、Pandas學習資源

          如果說學習Pandas最好的教程是什么,那毫無疑問是官方文檔,從小白到高手,它都給你安排的妥妥的,這個后面詳細介紹。

          下面我會從入門、進階、練習四個三面給你們推薦相應的教程和資源。

          1. 入門教程

          十分鐘入門Pandas(英文版)[1]

          這是Pandas官網專門為新手寫的入門引導,大概就幾千字,包括對Pandas的簡要介紹,和一些基本的功能函數。

          主要的內容有:數據的創(chuàng)建、查看、篩選、拼接、連接、分組、變形、可視化等等。

          而且這個小冊子包含了很多代碼示例,如果你能完整過一遍,入門Pandas基本沒啥問題。

          中文版似乎也有,但翻譯的準確性大家自己識別斟酌下。

          十分鐘入門 Pandas | Pandas 中文[2]

          利用Pandas進行數據分析[3]

          這本書不用了說了,可能是你入門python數據分析的第一本書,它的作者是Pandas庫的核心開發(fā)者,也就是說這本書相當于是Pandas的官方出版教程。

          image

          為什么它適合入門pandas,因為整本書的編排是從數據分析的角度切入的,由淺入深將pandas對數據的處理講的很透徹。

          當然這本書也存在知識點過于零碎,翻譯不到位的問題,但整體來說是本好書。

          w3schools pandas tutorial[4]

          w3school的pandas文檔, 邏輯比較清晰,也是從數據分析角度去講pandas。

          image

          Learn Pandas Tutorials[5]

          數據科學平臺kaggle提供的pandas入門教程,共六大節(jié)涵蓋了pandas數據處理各種方法。

          image

          joyful-pandas[6]

          國內小伙伴寫的Pandas筆記,挺詳細的,大家可以去下載項目里的notebook,放到自己電腦里練習。

          2. 進階教程

          pandas用戶指南[7]

          這是pandas官網的教程,非常詳細,主要從數據處理的角度介紹相應的pandas函數,方便用戶查閱。

          如果你的英文還不錯,也喜歡閱讀技術文檔,我是建議花時間把這份指南看一遍,配合練習。

          我把整個pandas文檔下載下來,發(fā)現足足有3000多頁。

          pandas api檢索[8]

          官網的pandas api集合,也就是pandas所有函數方法的使用規(guī)則,是字典式的教程,建議多查查。

          pandas-cookbook[9]

          這是一個開源文檔,作者不光介紹了Pandas的基本語法,還給出了大量的數據案例,讓你在分析數據的過程中熟悉pandas各種操作。

          Python Data Science Handbook[10]

          數據科學書冊,不光有pandas,還有ipython、numpy、matplotlib、sklearn,這些都是深入學習pandas不可缺少的工具。

          3. 練習資源

          Pandas練習集[11]

          github上一個練習項目,針對pandas每個功能都有對應的真實數據練習。

          101個Pandas練習[12]

          一位國外博主總結的100多個pandas練習題,非常全面。

          datacamp[13]

          數據科學教程網站,里面有大量pandas的練習題,還提供了詳細的速查表。

          小結

          pandas的教程主要還是以英文為主,國內翻譯的質量參差不齊,還是建議你在入門后多去看英文文檔,這是第一手資料,也是最靠譜的。

          Reference

          [1]

          十分鐘入門Pandas(英文版):https://pandas.pydata.org/docs/user_guide/10min.html

          [2]

          十分鐘入門 Pandas | Pandas 中文:http://www.pypandas.cn/docs/getting_started/10min.html

          [3]

          利用Pandas進行數據分析:https://github.com/wesm/pydata-book

          [4]

          w3schools pandas tutorial:https://www.w3schools.com/python/pandas/default.asp

          [5]

          Learn Pandas Tutorials:https://www.kaggle.com/learn/pandas

          [6]

          joyful-pandas:https://github.com/datawhalechina/joyful-pandas

          [7]

          pandas用戶指南:https://pandas.pydata.org/docs/user_guide/index.html#user-guide

          [8]

          pandas api檢索:https://pandas.pydata.org/docs/reference/index.html#api

          [9]

          pandas-cookbook:https://github.com/jvns/pandas-cookbook

          [10]

          Python Data Science Handbook:https://jakevdp.github.io/PythonDataScienceHandbook/

          [11]

          Pandas練習集:https://github.com/guipsamora/pandas_exercises

          [12]

          101個Pandas練習:https://www.machinelearningplus.com/python/101-pandas-exercises-python/

          [13]

          datacamp:https://www.datacamp.com/community/tutorials




          相關閱讀:


          瀏覽 73
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国内自拍青青 | 性a在线观看 | 一集黄色毛片 | 欧美三级无码 | 大香蕉久热 |