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

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series

這篇具有很好參考價值的文章主要介紹了【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

大家好!我是一朵向陽花(花花花),本期跟大家分享的知識是 pandas 數據結構——Series。

作者的【 Python 數據分析】專欄正在火熱更新中,如果本文對您有幫助,歡迎大家點贊 + 評論 + 收藏 !

每日金句分享:愿你有一天,能和你最重要的人重逢?!弧?艾拉「可塑性記憶」。

一、Series的創(chuàng)建

Series 是一種類似于一維數組的對象,由下面兩部分組成:

  • values:一組數據,ndarray 類型
  • index:數據索引

顧名思義,我們在創(chuàng)建 Series 對象時,需要傳遞一組數據,該數據大多數時候是可迭代對象。因此,下面三種創(chuàng)建方式都是將數據傳入到 Series 方法中。

1.1 列表創(chuàng)建

list1 = list('ABCD') # 創(chuàng)建列表
s =pd.Series(list1) # 傳遞列表數據到 Series 方法中
print(s)
print(type(s.values))
print(type(s.index))

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

1.2 NumPy數組創(chuàng)建

n = np.array(range(5,10))
s2 = pd.Series(n)
s2

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

1.3 字典創(chuàng)建

前兩種方式,都是只傳遞了數據,那么索引是默認索引(0 ~ N-1);下面的字典創(chuàng)建方式,則是以字典的鍵為索引,字典的值為數據。

d = {
'a':11,'b':22,'c':33,'d':44
}
s = pd.Series(d)
s

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

二、Series索引

從以上 Series 的創(chuàng)建中我們可以看出,Series 的索引是可以修改的 。我們先來探討以下索引的作用。

  • 獲取元素

有多種獲取方式,s.索引名,s[‘索引名’],s.loc[‘索引名’]

  • 允許修改

(為 s.index 重新賦值即可,注意前后數量一致)

顯式即表示使用索引名稱的方式,隱式即表示使用序號的方式。后面的顯式切片和隱式切片也是同理。

2.1 顯式索引

取單個值時,三種方式:(假設 Series 對象名為 s

  • s.索引名(數字索引不能用這種方式)
  • s[‘索引名’]
  • s.loc[‘索引名’]

取多個值時,返回一個新的 Series 對象,兩種方式(也就是加中括號):

  • s.[[‘索引名1’,‘索引名2’]]
  • s.loc[[‘索引名1’,‘索引名2’]]
s = pd.Series(np.array(range(5,10)),index=list('abcde'),name='number')
print(s)
display(s.a,s['a'],s.loc['a'])

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

2.2 隱式索引

隱式索引和顯示索引的區(qū)別就是它通過數字來獲取值。因為是數字,因此 s.number 這種方式肯定 不能用了 ,其他都相同。

取單值,兩種方式

  • s[number]
  • s.iloc[number]

取多值,兩種方式

  • s[[number1,number2]]
  • s.iloc[[number1,number2]]
s = pd.Series(np.array(range(5,10)),index=list('abcde'),name='number')
print(s)
print('取單值')
print(s[1])
print(s.iloc[1])
print('取多值')
print(s[[1,2]])
print(s.iloc[[1,2]])

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

三、Series切片

切片操作是獲取一個新的 Series 對象的操作,顯式切片是為左閉右臂,隱式切片時為左閉右開。

2.1 顯式切片

兩種方式:

  • s[索引名1:索引名2]
  • s.loc[索引名1:索引名2]

2.2 隱式切片

兩種方式:

  • s[number1:number2]
  • s.iloc[number1:number2]
s = pd.Series({
'yw':100,
'math':150,
'eng':110,
'Python':130
})
print('數據:',end='')
print('-'*10)
print(s)
print('-'*10)
print('顯式切片')
print(s['yw':'math'])
print('-'*10)
print(s.loc['yw':'math'])
print('-'*10)
print('隱式切片')
print(s[0:1])
print('-'*10)
print(s.iloc[0:1])

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

四、Series基本屬性和方法

Series基本屬性和方法是讓我們更好了解數據組成的手段。

4.1 屬性

屬性 作用
s.shape 查看數據行列
s.ndim 查看維度,Series 就是一維,ndim 恒等于1
s.size 查看數據總數
s.index 查看索引
s.values 查看數據
s.name 查看 Series 對象的 name,若未設定則為空

4.2 方法

方法 功能
s.head() 查看前5條數據,若傳入數字 n ,則查看前 n 條
s.tail() 查看后5條數據,若傳入數字 n ,則查看后 n 條
s.isnull() 判斷數據是否為空,空的為 True ,不空的為 False
s.notnull() 判斷數據是否不空,空的為 False ,不空的為 True

4.3 案例——使用 bool 值去除空值

原理:Series 切片可以再傳入一個 Series 對象,該 Series 對象索引要和原來相同,那么值為 False 的將不會被取出。

請看示例:

s = pd.Series(['a','e','f','b'])
s[pd.Series([True,True,False,True])]

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構
如果改為:

s = pd.Series(['a','e','f','b'])
s[pd.Series([True,True,False,True],index=list('abcd'))]

那么將會報錯:

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

下面是 Series 去除空值的案例。

s = pd.Series(['zhangsan','lisi','a',np.NAN,None])
print('數據:'+'-'*10)
print(s)
conditon = s.isnull()
print('判空情況:'+'-'*10)
print(conditon)
# 使用 bool 值索引過濾數據
s = s[~conditon]
print('過濾結果:'+'-'*10)
print(s)

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

五、Series運算

Series 運算包括算術運算和 Series 對象之間運算。算術運算是針對每一個元素的,有 +、-、*、/、 //、 %、 ** 等,這里不再贅述。Series 對象間的運算,只要記住,索引一個有一個沒有時,計算值為 NaN,其他按照算術運算計算即可。

  • 算術運算
s = pd.Series(np.array(range(5,10)))
print(s)
s * 10

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

  • Series對象間的運算
s1 = pd.Series(np.array(range(5,10)))
s2 = pd.Series([3,6,10,12])
print(s1)
print(s2)
s1 + s2 # 索引一個有一個沒有時,計算值為 NaN

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

六、Series多層行索引

6.1 Series多層索引的構建

Series 不僅支持單層索引,還支持多層索引。最簡單的實現方式就是將 index 設置成多維。

下面以二級行索引為例:

s = pd.Series(np.random.randint(60,100,6),index=[['語文','語文','語文','數學','數學','數學'],['小明','小紅','小麗','小明','小紅','小麗']])
print(s)

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

6.2 Series多層索引的索引和切片操作

對于 Series 多層索引的索引和切片操作,只要記住以下兩點:

  • 要先取第一層,再取第二層,不能直接取第二層索引
  • 獲取到第一層之后,就是一個普通的單層索引 Series
  • 隱式索引,直接得到數

具體的方式,還是索引和切片都分為顯式和隱式,下面通過一個案例來演示。

索引:

s = pd.Series(np.random.randint(60,100,6),index=[['語文','語文','語文','數學','數學','數學'],['小明','小紅','小麗','小明','小紅','小麗']])
print(s)
# 索引
print('顯式索引:'+'-'*10)
print(s['語文']) # 獲取到單層 Series
print(s.loc['語文']) 
print(s['語文']['小明'],s.loc['語文']['小明']) # 獲取到單個值
print('隱式索引:'+'-'*10)
print(s.iloc[0])
print(s[0]) # 獲取到單個值

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

切片:

s = pd.Series(np.random.randint(60,100,6),index=[['語文','語文','語文','數學','數學','數學'],['小明','小紅','小麗','小明','小紅','小麗']])
s = s.sort_index()
print(s)
print('顯式切片'+'-'*10)
print(s['數學':'語文'])
print(s.loc['數學':'語文'])
print('隱式切片'+'-'*10)
print(s[0:2])
print(s.iloc[0:2])

【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series,Python數據分析,數據分析,pandas,數據結構

結語

?? 本期跟大家分享的 “芝士” 就到此結束了,關于 Series 數據結構,你學會了嗎??

?? 我是向陽花花花花,在學習的路上一直前行,期待與你一起進步。~ ??

??如果文中有些地方不清楚的話,歡迎聯系我,我會給大家提供思路及解答。??文章來源地址http://www.zghlxwxcb.cn/news/detail-548358.html

相關導讀

文章直達 鏈接
上期回顧 【數據分析 - 基礎入門之pandas篇①】- pandas介紹
下期預告 【數據分析 - 基礎入門之pandas篇③】- pandas數據結構——DataFrame

到了這里,關于【數據分析 - 基礎入門之pandas篇②】- pandas數據結構——Series的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

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

領支付寶紅包贊助服務器費用

相關文章

  • Pandas庫:從入門到應用(一)--數據結構及基礎函數

    Pandas庫:從入門到應用(一)--數據結構及基礎函數

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

    2024年02月13日
    瀏覽(20)
  • Python中List類型數據結構廣泛應用于各種場景中。然而,在數據分析和可視化過程中,經常需要將List轉換為Pandas的DataFrame對象。那么如何將...

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

    2024年02月15日
    瀏覽(42)
  • 【算法與數據結構】--算法基礎--算法設計與分析

    一、貪心算法 貪心算法是一種解決優(yōu)化問題的算法設計方法,其核心思想是在每一步選擇當前狀態(tài)下的最優(yōu)解,從而希望最終達到全局最優(yōu)解。下面將介紹貪心算法的原理、實現步驟,并提供C#和Java的實現示例。 1.1 原理: 貪心算法的原理基于局部最優(yōu)選擇,通過在每一步選

    2024年02月07日
    瀏覽(25)
  • 【數據結構】—— 隊列基礎知識以及數組模擬隊列的分析、演示及優(yōu)化

    【數據結構】—— 隊列基礎知識以及數組模擬隊列的分析、演示及優(yōu)化

    ??一名熱愛Java的大一學生,希望與各位大佬共同學習進步?? ??個人主頁:@周小末天天開心 各位大佬的點贊?? 收藏? 關注?,是本人學習的最大動力 感謝! ??該篇文章收錄專欄—數據結構 目錄 什么是隊列? 數組模擬隊列 分析 存入隊列的步驟 使用數組模擬隊列—

    2024年01月19日
    瀏覽(22)
  • Python基礎知識詳解:數據類型、對象結構、運算符完整分析

    Python提供了豐富的數據類型,讓我們可以靈活地處理各種數據。 首先是數值類型。數值類型包括整型、浮點型和復數。 整型(int)用于表示整數,例如年齡、數量等。我們可以直接將一個整數賦值給一個變量,如下所示: 浮點型(float)用于表示帶有小數點的數,例如長度

    2024年02月09日
    瀏覽(22)
  • 算法分析與設計考前沖刺 (算法基礎、數據結構與STL、遞歸和分治、 動態(tài)規(guī)劃、貪心算法、 回溯算法)

    算法分析與設計考前沖刺 算法基礎 算法是一系列解決問題的清晰指令,代表著用系統的方法描述解決問題的策略機制。 程序是算法用某種程序設計語言的具體的 具體實現 算法特征: 有窮性(有限步) 確定性 輸入 輸出 可行性(有限時間) 算法的復雜性: 時間復雜性 和空間復

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

    【數據分析入門】人工智能、數據分析和深度學習是什么關系?如何快速入門 Python Pandas?

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

    2024年02月14日
    瀏覽(36)
  • 08-pandas 入門-pandas的數據結構

    08-pandas 入門-pandas的數據結構

    要使用pandas,你首先就得熟悉它的兩個主要數據結構:Series和DataFrame。雖然它們并不能解決所有問題,但它們?yōu)榇蠖鄶祽锰峁┝艘环N可靠的、易于使用的基礎。 Series是一種類似于一維數組的對象,它由一組數據(各種NumPy數據類型)以及一組與之相關的數據標簽(即索引)

    2024年02月11日
    瀏覽(36)
  • 數據分析基礎之《pandas(7)—高級處理2》

    數據分析基礎之《pandas(7)—高級處理2》

    四、合并 如果數據由多張表組成,那么有時候需要將不同的內容合并在一起分析 1、先回憶下numpy中如何合并 水平拼接 ? ? np.hstack() 豎直拼接 ? ? np.vstack() 兩個都能實現 ? ? np.concatenate((a, b), axis=) 2、pd.concat([data1, data2], axis=1) 按照行或者列進行合并,axis=0為列索引,axis=1為

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

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

    2024年02月10日
    瀏覽(24)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領取紅包

二維碼2

領紅包