日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

Python數(shù)據(jù)分析?Pandas?Series對象操作_python

作者:??tigeriaf???? ? 更新時(shí)間: 2022-07-19 編程語言

一、Pandas Series對象

Pandas 是基于 NumPy 設(shè)計(jì)實(shí)現(xiàn)的 Python 數(shù)據(jù)分析庫,Pandas 提供了大量的能讓我們高效處理數(shù)據(jù)的函數(shù)和方法,也納入了很多數(shù)據(jù)處理的庫以及一些數(shù)據(jù)模型,可以說非常強(qiáng)大。

可以使用以下命令進(jìn)行安裝:

conda install pandas
# 或
pip install pandas

Series數(shù)據(jù)結(jié)構(gòu)

Pandas 最常用的數(shù)據(jù)結(jié)構(gòu)主要有兩種:Series 和 DataFrame,這篇文章主要介紹一下Series及如何創(chuàng)建Series對象。

Series 是一維數(shù)組,由一列索引index和一列值values組成,索引和值是一一對應(yīng)的,可以存儲(chǔ)不同種類的數(shù)據(jù)類型,字符串、布爾值、數(shù)字、Python對象等都可以。

創(chuàng)建Series對象

創(chuàng)建Series對象的格式如下:

s = pd.Series(data, index)

參數(shù)data為數(shù)據(jù),可以是字典、列表、Numpy的 ndarray 數(shù)組等;
參數(shù)index為索引,值必須唯一,類似于Python字典的鍵,可以不傳,默認(rèn)為從0開始遞增的整數(shù)。

從列表創(chuàng)建:

data = ["a", "b", "c", "d", "e"]
s = pd.Series(data)
s

從字典創(chuàng)建:

當(dāng)data為字典時(shí),如果沒有傳入索引的話,會(huì)按照字典的鍵來構(gòu)造索引,索引對應(yīng)的值就是字典的鍵對應(yīng)的值。

data = {"a": 1, "b": 2, "c": 3}
s = pd.Series(data)
s

結(jié)果輸出如下:

a ? ?1
b ? ?2
c ? ?3
dtype: int64

從 ndarray 數(shù)組創(chuàng)建:

ndarray 為Numpy 的數(shù)組類型,在Python數(shù)據(jù)分析?Numpy?的使用方法的文章已經(jīng)介紹過。

data = np.array([1, 2, 3, 4])
s = pd.Series(data)
s

我們可以通過創(chuàng)建的Series對象,調(diào)用相應(yīng)的屬性和方法來進(jìn)行數(shù)據(jù)的處理分析等。下面繼續(xù)來看Series對象的基本操作

二、Series對象的基本操作

Series 常用屬性

  • index:獲取索引
  • values:獲取數(shù)組
  • size:獲取元素?cái)?shù)量
  • dtype:獲取對象的數(shù)據(jù)類型

獲取索引及修改索引

data = ["a", "b", "c", "d"]
s = pd.Series(data)
print(s.index)
s.index = ["A", "B", "C", "D"]
print(s.index)

結(jié)果輸出如下:

RangeIndex(start=0, stop=4, step=1)
Index(['A', 'B', 'C', 'D'], dtype='object')

指定索引對應(yīng)元素的獲取、修改及刪除

Series 通過索引獲取、修改及刪除對應(yīng)元素和Python字典的操作有些類似,具體使用方法如下:

# 獲取數(shù)據(jù)
print(s["A"])
# 修改數(shù)據(jù)
s['A'] = 99
# 刪除數(shù)據(jù)
s = s.drop("B")
s

另外,Series 也支持通過篩選條件獲取數(shù)據(jù),例如獲取能被2整除的數(shù)據(jù):

data = np.array([1, 2, 3, 4])
s = pd.Series(data)
s[s%2==0]

Series 切片

Series 切片操作同Python列表的切面也是類似的,如下:

s[0:3] 

表示取第0、1、2個(gè)數(shù)據(jù)。

也可以使用索引值來進(jìn)行切片,例如獲取索引值B-D的值:

s["B":"D"]
復(fù)制代碼

Series 常用方法

  • head(n):返回前n行數(shù)據(jù),默認(rèn)前5行
  • tail(n):返回后n行數(shù)據(jù),默認(rèn)后5行
  • isnull()&nonull():判斷是否為空,返回True和False
  • sort_values():排序,通過傳遞ascending參數(shù)來確定升序or降序,默認(rèn)為True,表示升序
  • dropna():刪除空值

Series 運(yùn)算

統(tǒng)計(jì)信息

可以通過describe()方法獲取統(tǒng)計(jì)信息,如下:

也可以通過如下方法分別獲取:

  • min():獲取最小值
  • max():獲取最大值
  • mean():獲取均值
  • median():獲取中位數(shù)
  • sum():獲取總和
  • count():獲取總數(shù)
  • ······

四則運(yùn)算

s+2  # 對每個(gè)元素進(jìn)行+2
s*100  # 對每個(gè)元素乘100

也可以調(diào)用如下方法進(jìn)行:加法add()、減法sub()、乘法mul()、除法div()。

原文鏈接:https://juejin.cn/post/7084925907307069447

欄目分類
最近更新