教程| pandas輕鬆入門 之 數據結構介紹 1

2021-01-15 FlyAI

訪問flyai.club,一鍵創建你的人工智慧項目

Pandas含有使數據清洗和分析工作變得更快更簡單的數據結構和操作工具。pandas經常和其它工具一同使用,如數值計算工具NumPy和SciPy,分析庫statsmodels和scikit-learn,和數據可視化庫matplotlib。pandas是基於NumPy數組構建的,特別是基於數組的函數和不使用for循環的數據處理。

雖然pandas採用了大量的NumPy編碼風格,但二者最大的不同是pandas是專門為處理表格和混雜數據設計的。而NumPy更適合處理統一的數值數組數據。

自從2010年pandas開源以來,pandas逐漸成長為一個非常大的庫,應用於許多真實案例。開發者社區已經有了800個獨立的貢獻者,他們在解決日常數據問題的同時為這個項目提供貢獻。

導入pandas的標準格式:

要使用pandas,你首先就得熟悉它的兩個主要數據結構:Series和DataFrame。雖然它們並不能解決所有問題,但它們為大多數應用提供了一種可靠的、易於使用的基礎。

Series是一種類似於一維數組的對象,它由一組數據(各種NumPy數據類型)以及一組與之相關的數據標籤(即索引)組成。僅由一組數據即可產生最簡單的Series

Series的字符串表現形式為:索引在左邊,值在右邊。由於我們沒有為數據指定索引,於是會自動創建一個0到N-1(N為數據的長度)的整數型索引。你可以通過Series 的values和index屬性獲取其數組表示形式和索引對象:

通常,我們希望所創建的Series帶有一個可以對各個數據點進行標記的索引:

與普通NumPy數組相比,你可以通過索引的方式選取Series中的單個或一組值:

['c', 'a', 'd']是索引列表,即使它包含的是字符串而不是整數

使用NumPy函數或類似NumPy的運算(如根據布爾型數組進行過濾、標量乘法、應用數學函數等)都會保留索引值的連結:

還可以將Series看成是一個定長的有序字典,因為它是索引值到數據值的一個映射。它可以用在許多原本需要字典參數的函數中:

如果數據被存放在一個Python字典中,也可以直接通過這個字典來創建Series:

如果只傳入一個字典,則結果Series中的索引就是原字典的鍵(有序排列)。你可以傳入排好序的字典的鍵以改變順序:

在這個例子中,sdata中跟states索引相匹配的那3個值會被找出來並放到相應的位置上,但由於"California"所對應的sdata值找不到,所以其結果就為NaN(即「非數字」(not a number),在pandas中,它用於表示缺失或NA值)。因為『Utah』不在states中,它被從結果中除去。

我將使用缺失(missing)或NA表示缺失數據。pandas的isnull和notnull函數可用於檢測缺失數據:

Series也有類似的實例方法:

對於許多應用而言,Series最重要的一個功能是,它會根據運算的索引標籤自動對齊數據:

數據對齊功能將在後面詳細講解。如果你使用過資料庫,你可以認為是類似join的操作。

Series對象本身及其索引都有一個name屬性,該屬性跟pandas其他的關鍵功能關係非常密切:

Series的索引可以通過賦值的方式就地修改:

— End —

相關焦點

  • 懂Excel也能輕鬆入門Python數據分析包pandas(二):高級篩選(上)
    更多 Python 數據處理的乾貨,敬請關注!!!!系列文章:懂Excel就能輕鬆入門Python數據分析包pandas(一):篩選功能前言經常聽別人說 Python 在數據領域有多厲害,結果學了很長時間,連數據處理都麻煩得要死。
  • Python數據分析利器,Pandas入門介紹,幫你便捷高效處理複雜數據
    關於Python的數據分析,當我們遇到的數據量小、數據結構簡單時,可以通過字典、列表等Python常見的數據結構來處理。但是當我們面對的大量數據以及複雜數據的局面時,就需要用一些專門用於數據分析的擴展庫來處理數據了。今天給大家介紹一個Python裡專門用來做數據分析和處理的擴展庫。
  • 懂Excel就能輕鬆入門Python數據分析包pandas(十六):合併數據
    此系列文章收錄在公眾號中:數據大宇宙 > 數據處理 >E-pd經常聽別人說 Python 在數據領域有多厲害,結果學了很長時間,連數據處理都麻煩得要死。後來才發現,原來不是 Python 數據處理厲害,而是他有數據分析神器—— pandas前言本系列上一節說了拆分數據的案例,這次自然是說下怎麼合併數據。
  • 懂Excel輕鬆入門Python數據分析包pandas(二十七):IF函數代替者
    此系列文章收錄在:數據大宇宙 > 數據處理 > E-pd轉發本文並私信我"python",即可獲得Python資料以及更多系列文章(持續更新的)經常聽別人說 Python 在數據領域有多厲害,結果學了很長時間,連數據處理都麻煩得要死。
  • 懂Excel輕鬆入門Python數據分析包pandas(二十一):透視表
    此系列文章收錄在公眾號中:數據大宇宙 > 數據處理 >E-pd經常聽別人說 Python 在數據領域有多厲害,結果學了很長時間,連數據處理都麻煩得要死。後來才發現,原來不是 Python 數據處理厲害,而是他有數據分析神器—— pandas前言本系列上一節文章最後我隨手使用了 pandas 中的透視表操作,之後有些小夥伴詢問我相關的問題。正好 pandas 的 pivot_table 也是與 Excel 透視表對應。本文簡單教你入門使用 pandas 完成透視表功能。
  • 懂Excel就能輕鬆入門Python數據分析包pandas(七):分列
    經常聽別人說 Python 在數據領域有多厲害,結果學了很長時間,連數據處理都麻煩得要死。後來才發現,原來不是 Python 數據處理厲害,而是他有數據分析神器—— pandas前言今天從兩個需求來看看數據分列功能,由於 Excel 自帶功能比較弱,在處理稍微複雜的需求時會顯得力不從心,因此,本系列文章將引入 Excel 中一個非常高效的數據處理插件—— Power Query,並且看看 pandas 是怎樣靈活解決。
  • PANDAS: 新手教程 一
    它可以幫助你對數據進行各種操作,並生成有關它的不同報告。我將把這篇文章分成兩篇基本知識-我將在這個故事中介紹。我將介紹Pandas的基本功能,這些功能將使你大致了解如何開始使用Pandas,以及它如何幫助你節省大量時間。高級-將通過高級的功能,使它更容易解決複雜的分析問題。它將涵蓋的主題,如風格,繪圖,讀取多個文件等。第二部分仍在進行中,敬請期待。
  • 使用pandas和openpyxl處理複雜Excel數據
    關於Excel數據處理,很多同學可能使用過Pyhton的pandas模塊,用它可以輕鬆地讀取和轉換Excel數據。但是實際中Excel表格結構可能比較雜亂,數據會分散不同的工作表中,而且在表格中分布很亂,這種情況下啊直接使用pandas就會非常吃力。本文蟲蟲給大家介紹使用pandas和openpyxl讀取這樣的數據的方法。
  • 從小白到大師,這裡有一份Pandas入門指南
    選自Medium作者:Rudolf Hhn機器之心編譯參與:李詩萌、張倩在本文中,作者從 Pandas 的簡介開始,一步一步講解了 Pandas 的發展現狀、內存優化等問題。這是一篇最佳實踐教程,既適合用過 Pandas 的讀者,也適合沒用過但想要上手的小白。
  • 超詳細教程|pandas合併之append和concat(下)
    本篇文章主要介紹了pandas中對series和dataframe對象進行連接的方法:pd.append()和pd.concat(),文中通過示例代碼對這兩種方法進行了詳細的介紹,希望能對各位python小白的學習有所幫助。
  • pandas基礎教程1
    Pandas是基於Numpy構建的(不知道pandas和我們的國寶有什麼關係),而Numpy和Pandas的數據類型是在基礎數據類型上建立,彼此相關,又彼此不同。Numpy對象最重要特點向量化運算,pandas對象最重要特點是字典和列表混合。
  • Pandas GUI:如何輕鬆獲取Pandas數據幀?
    它具有繪製數據幀以及重新構建數據幀的功能,用戶也可以進行任意自定義操作。本文將介紹它的各種功能以及在數據中使用的方法。PandasGUI,顧名思義,是一個用於分析Pandas數據幀的圖形用戶界面。該項目仍在積極開發中,可能會發生顛覆性的變化。
  • Python學習120課 pandas簡介kaggle下載數據及pandas讀取外部數據
    現在我們開始學習pandas,pandas一般用的更多,pandas是基於numpy去寫的。pandas是一個專門做數據結構和數據分析的庫。●pandas的安裝推薦使用anaconda,只要安裝了anaconda,它裡面就會自帶pandas,這會為我們省去很多的麻煩。接下來就是用pandas去處理數據,數據從哪來呢?
  • 超詳細教程|pandas合併之append和concat(上)
    本系列文章主要介紹了pandas中對series和dataframe對象進行連接的方法:pd.append()和pd.concat(),文中通過示例代碼對這兩種方法進行了詳細的介紹,希望能對各位python小白的學習有所幫助。
  • Pandas數據結構:DataFrame
    剛剛接觸pandas的朋友,想了解數據結構,就一定要認識DataFrame,接下來給大家詳細介紹!'ShenZhen' 'LiSa']]創建DataFrame方法一: 由字典創建 字典的key是列索引 值可以是1.列表 2.ndarray 3.Series# 值是列表data1 = {"a": [1,2,3],"b": [4,5,6],"c": [7,8,9]}print(data1
  • 如何用pandas更快地進行數據可視化?
    作者:劉早起來源:早起Python(公眾號)如果你經常使用Python進行數據分析,那麼對於pandas一定不會陌生,但是Pandas除了在數據處理上大放異彩,隨著版本的不斷更新,Pandas的繪圖功能在某些情況下甚至要比matplotlib更加適用,本文就將介紹如何用
  • Numpy入門詳細教程
    入門詳細教程python數據科學基礎庫主要是三劍客:numpy,pandas以及matplotlib,每個庫都集成了大量的方法接口,配合使用功能強大。numpy:numerical python縮寫,提供了底層基於C語言實現的數值計算庫,與python內置的list和array數據結構相比,其支持更加規範的數據類型和極其豐富的操作接口,速度也更快
  • PANDAS: 新手教程 一 - 人工智慧遇見磐創
    它可以幫助你對數據進行各種操作,並生成有關它的不同報告。我將把這篇文章分成兩篇基本知識-我將在這個故事中介紹。我將介紹Pandas的基本功能,這些功能將使你大致了解如何開始使用Pandas,以及它如何幫助你節省大量時間。高級-將通過高級的功能,使它更容易解決複雜的分析問題。它將涵蓋的主題,如風格,繪圖,讀取多個文件等。第二部分仍在進行中,敬請期待。
  • pandas指南:做更高效的數據科學家
    如果你已經熟悉Python,可以直接進入第三部分現在讓我們開始:pandas包最基本的功能1、讀取數據:sep變量代表分隔符。因為Excel中的csv分隔符是「;」,因此需要顯示它。編碼設置為「latin-1」以讀取法語字符。nrows=1000表示讀取前1000行。
  • Pandas的介紹與基本使用
    1、什麼是Pandas當大家談論到數據分析時,提及最多的語言就是Python和SQL,而Python之所以適合做數據分析,就是因為他有很多強大的第三方庫來協助,pandas就是其中之一,它是基於Numpy構建的,正因pandas的出現,讓Python語言也成為使用最廣泛而且強大的數據分析環境之一。