您好,登錄后才能下訂單哦!
這篇文章給大家分享的是pandas的Series數組的使用方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
很多時候,我們數據除了數值之外,還有字符串,時間序列等
比如:我們通過爬蟲獲取到了存儲在數據庫中的數據
所以, numpy能夠幫助我們處理數值,但是pandas處理處理數值之外(基于numpy),還能夠幫助我們處理其他類型的數據
pandas常用的數據類型
1.Series一維, 帶標簽(索引)數組
2. DataFrame二維, Series容器
pandas的Series學習
創建一個Series數組
import pandas as pd
import numpy as np
# 創建長度為10的Series數組
t = pd.Series(np.arange(10))
這樣就可以創建一個簡單的Series數組了,數組的左邊是它的索引,右邊是它的值
,因此它有index和values方法
更改Series數組的索引值
其中index=list(string.ascii_uppercase[:10])表示的是取前10位大寫字母來代替索引
在這里插入代碼片
注意: pd.Series能夠干什么,能夠傳入什么類型的數據讓其變為series結構,index是什么?
在什么位置,對于我們常見的數據庫或者ndarray來說,index是什么,如何給一組數據指定index?
在pd.Series()中的參數可以傳入一個字典,也能傳入一個列表,元組等
重新給其指定其他的索引之后,如果能夠對應上,就取其值,如果不能,就為nan, 此時數據的類型就為float類型了,因為numpy中的nan為float類型,pandas會自動根據數據類型更改Series的dtype類型,若要修改此類型,使用.astype即可修改
pandas之Series切片和索引
t = pd.Series(np.arange(10), index=list(string.ascii_uppercase[:10]))
t[2:10:2] # 從第三個開始以步長為2,到第10個為止
t[[2, 3, 6]] # 選擇第三個, 第四個, 和第七個的值
t["F"] # 選擇索引為F的值
結果如下:
切片:在"[]"中直接傳入start end 或者步長即可
索引:一個的時候傳入序號或者index,多個的時候傳入序號或者index的列表
pandas之Series的索引和值
對于一個陌生的series類型,我們如何知道它的索引和具體的值呢:
t.index ==> 返回數組的索引,是一個列表類型,可以進行遍歷,也可進行強制類型轉換,如: tuple(t.index) # 進行強制類型轉換
t.values ==> 返回數組的值,是一個列表類型,可以進行遍歷,也可進行強制類型轉換,如: tuple(t.values)
Series對象本質上由兩個數組構成。
一個數組構成對象的鍵(index,索引),一個數組構成對象的值(values),鍵 -> 值
ndarray的很多方法都可以運用于series類型,比如argmax,clip
series具有where方法,但是結果和ndarray不同,具體方法可以查看官方文檔np.Series.where使用教程
pandas讀取mongodb數據
這里由于我的mongodb里面沒有數據,所以我就手動添加了一些數據(0.0)
from pymongo import MongoClient
import pandas as pd
client = MongoClient()
collection = client["xin"]["test"]
data = list(collection.find())
a = ["hello", "world"]
data.append(a)
t1 = data[0]
t1 = pd.Series(t1)
print(t1)
結果如下
pandas讀取外部文件
pandas提供了很多讀取數據的方法,比如:
這里我以csv文件舉例
import pandas as pd
# pandas 讀取文件
t = pd.read_csv("./demo.csv")
print(t)
csv文件結果如下
我們這組的數據存在csv文件中,我們直接使用pd.read_csv即可
和我們想象中的有些差別,我們以為他會是一個Series類型,但實際上它是一個DataFrame數組類型。
關于pandas的Series數組的使用方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。