国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu)

這篇具有很好參考價值的文章主要介紹了08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

要使用pandas,你首先就得熟悉它的兩個主要數(shù)據(jù)結(jié)構(gòu):Series和DataFrame。雖然它們并不能解決所有問題,但它們?yōu)榇蠖鄶?shù)應用提供了一種可靠的、易于使用的基礎(chǔ)。

一、Series

Series是一種類似于一維數(shù)組的對象,它由一組數(shù)據(jù)(各種NumPy數(shù)據(jù)類型)以及一組與之相關(guān)的數(shù)據(jù)標簽(即索引)組成

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

Series的字符串表現(xiàn)形式為:索引在左邊,值在右邊。由于我們沒有為數(shù)據(jù)指定索引,于是會自動創(chuàng)建一個0到N-1(N為數(shù)據(jù)的長度)的整數(shù)型索引。

通過Series 的values和index屬性獲取其數(shù)組表示形式和索引對象:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

創(chuàng)建series

  • 通過指定index索引創(chuàng)建:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

  • 通過字典創(chuàng)建:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

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

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

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

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

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

Series也有類似的實例方法:

obj4.isnull()

series的索引

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

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

對于許多應用而言,Series最重要的一個功能是,它會根據(jù)運算的索引標簽自動對齊數(shù)據(jù):

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

數(shù)據(jù)對齊功能將在后面詳細講解。如果你使用過數(shù)據(jù)庫,你可以認為是類似join的操作。

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

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

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

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

二、DataFrame

DataFrame是一個表格型的數(shù)據(jù)結(jié)構(gòu),它含有一組有序的列,每列可以是不同的值類型(數(shù)值、字符串、布爾值等)。

DataFrame既有行索引也有列索引,它可以被看做由Series組成的字典(共用同一個索引)。

DataFrame中的數(shù)據(jù)是以一個或多個二維塊存放的(而不是列表、字典或別的一維數(shù)據(jù)結(jié)構(gòu))

筆記:雖然DataFrame是以二維結(jié)構(gòu)保存數(shù)據(jù)的,但你仍然可以輕松地將其表示為更高維度的數(shù)據(jù)(層次化索引的表格型結(jié)構(gòu),這是pandas中許多高級數(shù)據(jù)處理功能的關(guān)鍵要素,我們會在第8章討論這個問題)。

創(chuàng)建DataFrame

普通字典創(chuàng)建

最常用的一種是直接傳入一個由等長列表或NumPy數(shù)組組成的字典:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

結(jié)果DataFrame會自動加上索引(跟Series一樣),且全部列會被有序排列:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

如果指定了列序列,則DataFrame的列就會按照指定順序進行排列:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

如果傳入的列在數(shù)據(jù)中找不到,就會在結(jié)果中產(chǎn)生缺失值:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

嵌套字典創(chuàng)建

另一種常見的數(shù)據(jù)形式是嵌套字典:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

如果嵌套字典傳給DataFrame,pandas就會被解釋為:外層字典的鍵作為列,內(nèi)層鍵則作為行索引:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

內(nèi)層字典的鍵會被合并、排序以形成最終的索引。如果明確指定了索引,則不會這樣:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

由Series組成的字典差不多也是一樣的用法:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

表5-1列出了DataFrame構(gòu)造函數(shù)所能接受的各種數(shù)據(jù)。

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

獲取列/行數(shù)據(jù)(series)

通過類似字典標記的方式或?qū)傩缘姆绞?,可以將DataFrame的列獲取為一個Series:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

frame2[column]適用于任何列的名,但是frame2.column只有在列名是一個合理的Python變量名時才適用。

注意,返回的Series擁有原DataFrame相同的索引,且其name屬性也已經(jīng)被相應地設(shè)置好了(默認設(shè)置為列索引名稱)。

行也可以通過位置或名稱的方式進行獲取,比如用loc屬性(稍后將對此進行詳細講解):

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

修改列數(shù)據(jù)

列可以通過賦值的方式進行修改。

例如,我們可以給那個空的"debt"列賦上一個標量值或一組值:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

將列表或數(shù)組賦值給某個列時,其長度必須跟DataFrame的長度相匹配。如果賦值的是一個Series,就會精確匹配DataFrame的索引,所有的空位都將被填上缺失值:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

為不存在的列賦值會創(chuàng)建出一個新列

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

注意:不能用frame2.eastern創(chuàng)建新的列。

del方法可以用來刪除這列:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

注意:通過索引方式返回的列只是相應數(shù)據(jù)的視圖而已,并不是副本。因此,對返回的Series所做的任何就地修改全都會反映到源DataFrame上。通過Series的copy方法即可指定復制列。

如果設(shè)置了DataFrame的index和columns的name屬性,則這些信息也會被顯示出來:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

跟Series一樣,values屬性也會以二維ndarray的形式返回DataFrame中的數(shù)據(jù):

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

如果DataFrame各列的數(shù)據(jù)類型不同,則值數(shù)組的dtype就會選用能兼容所有列的數(shù)據(jù)類型:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

三、索引對象

pandas的索引對象負責管理軸標簽和其他元數(shù)據(jù)(比如軸名稱等)。構(gòu)建Series或DataFrame時,所用到的任何數(shù)組或其他序列的標簽都會被轉(zhuǎn)換成一個Index:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

Index對象是不可變的,因此用戶不能對其進行修改

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

不可變可以使Index對象在多個數(shù)據(jù)結(jié)構(gòu)之間安全共享:

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

注意:雖然用戶不需要經(jīng)常使用Index的功能,但是因為一些操作會生成包含被索引化的數(shù)據(jù),理解它們的工作原理是很重要的。

除了類似于數(shù)組,Index的功能也類似一個固定大小的集合,與python的集合不同,pandas的Index可以包含重復的標簽,選擇重復的標簽,會顯示所有的結(jié)果。

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas

每個索引都有一些方法和屬性,它們可用于設(shè)置邏輯并回答有關(guān)該索引所包含的數(shù)據(jù)的常見問題。表5-2列出了這些函數(shù)。

08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)分析,pandas文章來源地址http://www.zghlxwxcb.cn/news/detail-678380.html

到了這里,關(guān)于08-pandas 入門-pandas的數(shù)據(jù)結(jié)構(gòu)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • Python中List類型數(shù)據(jù)結(jié)構(gòu)廣泛應用于各種場景中。然而,在數(shù)據(jù)分析和可視化過程中,經(jīng)常需要將List轉(zhuǎn)換為Pandas的DataFrame對象。那么如何將...

    Python中List類型數(shù)據(jù)結(jié)構(gòu)廣泛應用于各種場景中。然而,在數(shù)據(jù)分析和可視化過程中,經(jīng)常需要將List轉(zhuǎn)換為Pandas的DataFrame對象。那么如何將List轉(zhuǎn)換為DataFrame對象呢?本文將介紹如何使用Python中Pandas庫將List轉(zhuǎn)換為DataFrame,并進一步將其轉(zhuǎn)換為字符串。 將Python List轉(zhuǎn)換為Pandas D

    2024年02月15日
    瀏覽(42)
  • 【數(shù)據(jù)分析 - 基礎(chǔ)入門之pandas篇①】- pandas介紹

    【數(shù)據(jù)分析 - 基礎(chǔ)入門之pandas篇①】- pandas介紹

    pandas 是 Python 的 核心數(shù)據(jù)分析支持庫 ,提供了快速、靈活、明確的數(shù)據(jù)結(jié)構(gòu),旨在簡單、直觀地處理關(guān)系型、標記型數(shù)據(jù)。 pandas 的目標是成為 Python 數(shù)據(jù)分析實踐與實戰(zhàn)的必備高級工具 ,其長遠目標是成為最強大、最靈活、可以支持任何語言的開源數(shù)據(jù)分析工具。經(jīng)過多年

    2024年02月13日
    瀏覽(26)
  • 【數(shù)據(jù)分析入門】人工智能、數(shù)據(jù)分析和深度學習是什么關(guān)系?如何快速入門 Python Pandas?

    【數(shù)據(jù)分析入門】人工智能、數(shù)據(jù)分析和深度學習是什么關(guān)系?如何快速入門 Python Pandas?

    本文詳細介紹了人工智能、數(shù)據(jù)分析和深度學習之間的關(guān)系,并就數(shù)據(jù)分析所需的Pandas庫做了胎教般的入門引導。祝讀得開心! ??本文是原 《數(shù)據(jù)分析大全》 、現(xiàn)改名為 《數(shù)據(jù)分析》 專欄的第二篇,我在寫這篇文章的時候突然意識到—— 單靠我是不可能把數(shù)據(jù)分析的方

    2024年02月14日
    瀏覽(37)
  • 使用Pandas進行數(shù)據(jù)處理和分析的入門指南

    摘要:本文將介紹如何使用Python的Pandas庫進行數(shù)據(jù)處理和分析,包括數(shù)據(jù)導入、數(shù)據(jù)清洗、數(shù)據(jù)轉(zhuǎn)換和簡單分析等方面的內(nèi)容。 在數(shù)據(jù)科學和數(shù)據(jù)分析領(lǐng)域,數(shù)據(jù)處理是一個關(guān)鍵的步驟。Python的Pandas庫提供了強大且易于使用的工具,使數(shù)據(jù)處理變得簡單和高效。本文將引導您

    2024年02月10日
    瀏覽(24)
  • 數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計分析—— 數(shù)據(jù)結(jié)構(gòu)及常用算法

    數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計分析—— 數(shù)據(jù)結(jié)構(gòu)及常用算法

    1、順序表與鏈表 線性表是 線性結(jié)構(gòu) ,是包含n個數(shù)據(jù)元素的有限序列,通過順序存儲的線性表稱為 順序表 ,它是將線性表中所有元素按照其邏輯順序,依次存儲到指定存儲位置開始的一塊連續(xù)的存儲空間里;而通過鏈式存儲的 鏈表 中,每個結(jié)點不僅包含該元素的信息,還

    2024年02月07日
    瀏覽(24)
  • 源碼分析——ConcurrentHashMap源碼+底層數(shù)據(jù)結(jié)構(gòu)分析

    源碼分析——ConcurrentHashMap源碼+底層數(shù)據(jù)結(jié)構(gòu)分析

    1. 存儲結(jié)構(gòu) Java 7 中 ConcurrentHashMap 的存儲結(jié)構(gòu)如上圖,ConcurrnetHashMap 由很多個 Segment 組合,而每一個 Segment 是一個類似于 HashMap 的結(jié)構(gòu),所以每一個 HashMap 的內(nèi)部可以進行擴容。但是 Segment 的個數(shù)一旦 初始化就不能改變 ,默認 Segment 的個數(shù)是 16 個,你也可以認為 ConcurrentH

    2024年02月13日
    瀏覽(24)
  • 【Python爬蟲與數(shù)據(jù)分析】基本數(shù)據(jù)結(jié)構(gòu)

    目錄 一、概述 二、特性 三、列表 四、字典 Python基本數(shù)據(jù)結(jié)構(gòu)有四種,分別是列表、元組、集合、字典 ,這是Python解釋器默認的數(shù)據(jù)結(jié)構(gòu),可以直接使用,無需像C語言那樣需要手搓或像C++那樣需要聲明STL頭文件。 Python的數(shù)據(jù)結(jié)構(gòu)非常靈活,對數(shù)據(jù)類型沒有限制,即一個數(shù)

    2024年02月11日
    瀏覽(23)
  • 大數(shù)據(jù)分析組件Hive-集合數(shù)據(jù)結(jié)構(gòu)

    Hive是一個基于Hadoop的數(shù)據(jù)倉庫基礎(chǔ)設(shè)施,用于處理大規(guī)模分布式數(shù)據(jù)集。它提供了一個類似于SQL的查詢語言(稱為HiveQL),允許用戶以類似于關(guān)系型數(shù)據(jù)庫的方式查詢和分析存儲在Hadoop集群中的數(shù)據(jù)。 Hive常作為離線數(shù)倉的分析工具,當面臨Json數(shù)據(jù)時,Hive需要用到其數(shù)據(jù)結(jié)

    2024年01月25日
    瀏覽(17)
  • Pandas庫:從入門到應用(一)--數(shù)據(jù)結(jié)構(gòu)及基礎(chǔ)函數(shù)

    Pandas庫:從入門到應用(一)--數(shù)據(jù)結(jié)構(gòu)及基礎(chǔ)函數(shù)

    一、Pandas簡介 pandas是 Python 的核?數(shù)據(jù)分析?持庫,提供了快速、靈活、明確的數(shù)據(jù)結(jié)構(gòu),旨在簡單、直觀地處理關(guān)系型、標記型數(shù)據(jù)。pandas是Python進?數(shù)據(jù)分析的必備?級?具。 pandas的主要數(shù)據(jù)結(jié)構(gòu)是 Series (?維數(shù)據(jù))與 DataFrame (?維數(shù)據(jù)),這兩種數(shù)據(jù)結(jié)構(gòu)?以處理?融、

    2024年02月13日
    瀏覽(20)
  • 【分析git 的數(shù)據(jù)結(jié)構(gòu)】

    【分析git 的數(shù)據(jù)結(jié)構(gòu)】

    Blob對象:每個 Blob 對象代表一個文件的數(shù)據(jù),它只包含文件的數(shù)據(jù),不包含文件的元數(shù)據(jù)(如文件名、路徑、格式等)。 Tree對象:每個 Tree 對象代表一個目錄的信息,它包含了此目錄下的 Blob 對象和子 Tree 對象(對應于子目錄),以及其他元數(shù)據(jù),如文件名、路徑等。對于

    2024年03月13日
    瀏覽(34)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包