首頁常見問題正文

什么是Series?Series類的構(gòu)造方法

更新時(shí)間:2023-09-13 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

pandas中提供了兩個比較重要的數(shù)據(jù)結(jié)構(gòu),即Series和DataFrame,分別用于處理一維數(shù)據(jù)和二維數(shù)據(jù)。本節(jié)將針對pandas的數(shù)據(jù)結(jié)構(gòu)進(jìn)行詳細(xì)的介紹。

Series是由 pandas 庫提供的一個類,Series類對象的結(jié)構(gòu)類似于一維數(shù)組,主要由數(shù)據(jù)和索引兩部分組成,其中數(shù)據(jù)可以是任意類型,如整數(shù)、字符串、浮點(diǎn)數(shù)等。Series類對象的結(jié)構(gòu)示意如圖所示。

1694589002154_索引.png

Series類對象的索引位于左側(cè),數(shù)據(jù)位于右側(cè)。需要說明的是,Series類對象的索引樣式比較豐富,默認(rèn)是自動生成的整數(shù)索引(從0開始遞增),也可以是自定義的標(biāo)簽索引(由自定義的標(biāo)簽構(gòu)成的索引)、時(shí)間索引(由日期時(shí)間構(gòu)成的索引)等。

通過Series類的構(gòu)造方法可以創(chuàng)建一維數(shù)據(jù)。Series類構(gòu)造方法的語法格式如下。

pandas.Series (data=None,index=None,dtype=None,nane=None,copy=False,
fastpath=False)

以上構(gòu)造方法中常用參數(shù)的含義如下。

· data:表示傳入的數(shù)據(jù),可以是ndarry、列表、字典等。

· index:表示傳入的索引,必須是唯一值,且與數(shù)據(jù)的長度相同。若沒有傳入索引,則創(chuàng)建的Series類對象會自動生成0~N的整數(shù)索引。

· dtype:表示數(shù)據(jù)的類型。若未指定數(shù)據(jù)類型,pandas會根據(jù)傳入的數(shù)據(jù)自動推斷數(shù)據(jù)類型。

· name:表示Series類對象的名稱。

· copy:表示是否復(fù)制數(shù)據(jù),默認(rèn)為Fakse。

接下來,通過在Series0方法中傳人列表的方式創(chuàng)建Series類對象,代碼如下。

import pandas an pd                    # 導(dǎo)入pandan庫
# 根據(jù)列表創(chuàng)建Series類對象
ser_obj = pd.Series(['Python','Java','PHP'])
print(ser_cbj)
0    Python
1       Java
2        PHP
dtype: object

從輸出結(jié)果可以看出,Series類對象的索引為0~2,即自動生成的整數(shù)索引;數(shù)據(jù)由上至下依次為列表的各個元素,其類型為object,該類型是根據(jù)列表中元素的類型推斷出來的。

在使用Series0方法創(chuàng)建對象時(shí),可以傳人index參數(shù)指定自定義的索引,代碼如下。

In  []:   # 導(dǎo)入pandaa庫
          import pandas as pd
          # 創(chuàng)建Series類對象,同時(shí)為該對象指定索引
          ser_obj = pd.Series(['Python', 'Java', 'PHP'],
          index = ['one', 'two', 'three']}
          print(ser_obj)
          one   Python
          two    Java
          three    PHP
          dtype: cbject

從輸出結(jié)果可以看出,Series類對象的索引不再是整數(shù)索引,而是由 index參數(shù)指定的標(biāo)簽索引。

使用Series()方法創(chuàng)建對象時(shí)可以傳入字典,此時(shí)字典的鍵將作為Series類對象的索引。字典的值將作為Series類對象的數(shù)據(jù),代碼如下。

In  []:  data =('one':'Python', 'two': 'Java','three': 'PHP')
         ser_cbj2 = pd.Series(data)        # 根據(jù)字典創(chuàng)建Series類對象
         print(ser cbj2)
         one    Python
         two    Java
         three    PHP
         dtype: object




分享到:
在線咨詢 我要報(bào)名
和我們在線交談!