日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Python数据分析pandas之series初识

發布時間:2024/9/27 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python数据分析pandas之series初识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Python數據分析pandas之series初識

聲明與簡介

pandas是一個基于python的、快速的、高效、靈活、易用的開源的數據處理、分析包(工具)。。pandas構建在numpy之上,它通過DataFrame(數據框)來操作數據。數據框是一個高效的可以指定行和列標簽的多維數組,通過這種數據類型可以更方便的操作、分析數據。本文主要介紹Series的初始化和訪問。

創建Series

Series是個一維的索引化數組,和定義一維的ndrray類似,我們可以通過”[]”直接定義。

通過ndarray創建Series

#通過numpy的ndarry初始化Series import pandas as pd import numpy as np serie1= pd.Series(np.array([1, 2, 3, 4])) print(serie1)#結果 0 1 1 2 2 3 3 4 dtype: int32#注:這里沒有指定索引,默認的索引是數值型的,從0開始。

創建無索引內容Series

#通過np.Series直接創建Series。 import pandas as pd serie1= pd.Series([3,5,8]) print(serie1) print(type(serie1.values),serie1.values) #結果,從結果可以看到Series.values返回的是numpy的ndarray類型。 0 3 1 5 2 8 dtype: int64 <class 'numpy.ndarray'> [3 5 8]那么這里我們不難發現和一維的ndarray相比,Series在索引上是顯式的,即數據里帶有索引信息。當然索引的內容可以不都是數字型的,而ndarray的索引卻都是數字型的。

創建有索引內容Series

# 這里創建一個顯式索引定義的Series,演示的內容主要是可以通過指定的索引內容來訪問Series里的數據。另外這里也舉例說明了Series里自動實現元素類型的統一,比如元素類型有int和float時,int都統一轉換為float。 import pandas as pd serie1= pd.Series([3,5,8.23],index=['id','no','seq']) print(serie1) print(type(serie1.values),serie1.values) print("索引號"+'seq'+'\t:'+str(serie1['seq']))

通過字典不指定索引創建Series

# 通過字典來創建Series,這里的字典即是key:value鍵值對。 import pandas as pd dic1 ={"id": 10001, "name":"張三", "course":"英文", "score":"90" } serie1= pd.Series(dic1) print(serie1) print("索引號"+'name'+'\t:'+str(serie1['name']))

索引不同元素相同方式初始化Series

# 通過指定索引方式創建Series,這里所有的元素都初始化為同樣的值。 import pandas as pd serie1= pd.Series(10,index=['id','score','level']) print(serie1)print("索引號"+'name'+'\t:'+str(serie1['name'])) #結果 id 10 score 10 level 10 dtype: int64 #這種方式指定了索引,所有的索引對應的元素都是相同的值。 #如果想指定數據類型,可以加上參數dtype,比如dtype=np.int32

通過字典指定索引創建Series

import pandas as pd dic1 = {"course": "英文","id": "10001","name": "張三","score": "90" }serie1= pd.Series(dic1,index=['course','id','score']) print(serie1) print(serie1['score']) print(dic1) print(serie1.size)#結果 course 英文 id 10001 score 90 dtype: object 90 3 {'course': '英文', 'id': '10001', 'name': '張三', 'score': '90'} #這里不難發現,雖然字典里有4個元素,但因為生成Series時指定的索引僅有3個且和字典的key名一致,所以最終生成Series僅有3個元素。我們可以通過它的size可以看到。

通過字典數組創建Series

# 通過字典數組來創建Series,這里的字典即是key:value鍵值對。數組里每個元素都是字典類型。 import pandas as pd dic1 =[{ "course": "英文", "id": "10001", "name":"張三", "score":"90" }, {"course":"語文", "id": "10002", "name":"李四", "score":"80" }] serie1= pd.Series(dic1) print(serie1[1]) print(type(serie1[1])) #結果 {'course': '語文', 'id': '10002', 'name': '李四', 'score': '80'} <class 'dict'> 注:一般我們不通過字典數組初始化Series,因為Series和普通數組的區別在于它有顯式的,且有意義的,而字典數組方式直接初始化,默認的索引和普通ndarray方式一樣,即0、1這種數字型索引。除非每條記錄有特定意義,通過索引標識。

訪問Series

通過索引位置索引訪問Series

#通過索引號或者位置索引(從0開始),以”[]”的方式訪問Series。 import pandas as pd dic1 = {"course": "英文","id": "10001","name": "張三","score": "90"}serie1= pd.Series(dic1) print(serie1['id'],serie1['course']) print(serie1[1],serie1[3])#結果 10001 英文 10001 英文

通過loc顯示訪問Series

#通過loc方式訪問,方法類似以索引方式訪問。import pandas as pd dic1 = {"course": "英文","id": "10001","name": "張三","score": "90"}serie1= pd.Series(dic1) print(serie1.loc['id'],serie1.loc['score'])#結果 10001 90

通過iloc顯示訪問Series

#通過iloc方式訪問,方法類似以位置索引方式訪問。import pandas as pd dic1 = {"course": "英文","id": "10001","name": "張三","score": "90"}serie1= pd.Series(dic1) print(serie1.iloc[1],serie1.iloc[3])#結果 10001 90

通過loc對Series切片

#類似ndarry,我們可以通過“[start:end]”(start即下標、end為上標)方式對數組進行切片訪問,這里切片后仍然是Series。 import pandas as pd dic1 = {"course": "英文","id": "10001","name": "張三","score": "90" } serie1= pd.Series(dic1) print(serie1.loc["course":"name"])#結果 course 英文 id 10001 name 張三 dtype: object

通過iloc對Series切片

#類似ndarry,我們可以通過“[start:end]”(start即下標、end為上標)方式對數組進行切片訪問,這里切片后仍然是Series。 import pandas as pd dic1 = {"course": "英文","id": "10001","name": "張三","score": "90" } serie1= pd.Series(dic1) print(serie1.iloc[1:3])#結果 id 10001 name 張三 dtype: object

總結

以上是生活随笔為你收集整理的Python数据分析pandas之series初识的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。