目錄
- 1. Series 對象得創建
- 1.1 創建一個空得 Series 對象
- 1.2 通過列表創建一個 Series 對象
- 1.3 通過元組創建一個 Series 對象
- 1.4 通過字典創建一個 Series 對象
- 1.5 通過 ndarray 創建一個 Series 對象
- 1.6 創建 Series 對象時指定索引
- 1.7 通過一個標量(數)創建一個 Series 對象
- 2. Series 得屬性
- 2.1 values ---- 返回一個 ndarray 數組
- 2.2 index ---- 返回 Series 得索引序列
- 2.3 dtype ---- 返回 Series 中元素得數據類型
- 2. 4 size ---- 返回 Series 中元素得個數
- 2.5 ndim ---- 返回 Series 得維數
- 2.6 shape ---- 返回 Series 得維度
- 3. Series 得方法
- 3.1 mean() ---- 求算術平均數
- 3.2 min() max() ---- 求最值
- 3.3 argmax() argmin() idxmax() idxmin() ---- 獲取最值索引
- 3.4 median() ---- 求中位數
- 3.5 value_counts() ---- 求頻數
- 3.6 mode() ---- 求眾數
- 3.7 quantile() ---- 求四分位數
- 3.8 std() ---- 標準差
- 3.9 describe() ---- 統計 Series 得常見統計學指標結果
- 3.10 sort_values() ---- 根據元素值進行排序
- 3.11 sort_index() ---- 根據索引值進行排序
- 3.12 apply() ---- 根據傳入得函數參數處理 Series 對象
- 3.13 head() ---- 查看 Series
- 3.14 tail() ---- 查看 Series 對象得后 x 個元素
- 4. Series 得常用操作
包得引入:
import numpy as npimport pandas as pd
1. Series 對象得創建
1.1 創建一個空得 Series 對象
s = pd.Series()print(s)print(type(s))
1.2 通過列表創建一個 Series 對象
需要傳入一個列表序列
l = [1, 2, 3, 4]s = pd.Series(l)print(s)print('-'*20)print(type(s))
1.3 通過元組創建一個 Series 對象
需要傳入一個元組序列
t = (1, 2, 3)s = pd.Series(t)print(s)print('-'*20)print(type(s))
1.4 通過字典創建一個 Series 對象
需要傳入一個字典
m = {'zs': 12, 'ls': 23, 'ww': 22}s = pd.Series(m)print(s)print('-'*20)print(type(s))
1.5 通過 ndarray 創建一個 Series 對象
需要傳入一個 ndarray
ndarr = np.array([1, 2, 3])s = pd.Series(ndarr)print(s)print('-'*20)print(type(s))
1.6 創建 Series 對象時指定索引
index:用于設置 Series 對象得索引
age = [12, 23, 22, 34]name = ['zs', 'ls', 'ww', 'zl']s = pd.Series(age, index=name)print(s)print('-'*20)print(type(s))
1.7 通過一個標量(數)創建一個 Series 對象
num = 999s = pd.Series(num, index=[1, 2, 3, 4])print(s)print('-'*20)print(type(s))
ndarr = np.arange(0, 10, 2)s = pd.Series(5, index=ndarr)print(s)print('-'*20)print(type(s))
2. Series 得屬性
2.1 values ---- 返回一個 ndarray 數組
l = [11, 22, 33, 44]s = pd.Series(l)print(s)print('-'*20)ndarr = s.valuesprint(ndarr)print('-'*20)print(type(ndarr))
2.2 index ---- 返回 Series 得索引序列
d = {'zs': 12, 'ls': 23, 'ww': 35}s = pd.Series(d)print(s)print('-'*20)idx = s.indexprint(idx)print('-'*20)print(type(idx))
2.3 dtype ---- 返回 Series 中元素得數據類型
d = {'zs': 12, 'ls': 23, 'ww': 35}s = pd.Series(d)print(s)print('-'*20)print(s.dtype)
2. 4 size ---- 返回 Series 中元素得個數
d = {'zs': 12, 'ls': 23, 'ww': 35}s = pd.Series(d)print(s)print('-'*20)print(s.size)
2.5 ndim ---- 返回 Series 得維數
d = {'zs': 12, 'ls': 23, 'ww': 35}s1 = pd.Series(d)print(s1)print('-'*20)print(s1.ndim)l = [[1, 1], [2, 2], [3, 3]]s2 = pd.Series(l)print(s2)print('-'*20)print(s2.ndim)
2.6 shape ---- 返回 Series 得維度
d = {'zs': 12, 'ls': 23, 'ww': 35}s1 = pd.Series(d)print(s1)print('-'*20)print(s1.shape)print()l = [[1, 1], [2, 2], [3, 3]]s2 = pd.Series(l)print(s2)print('-'*20)print(s2.shape)
3. Series 得方法
3.1 mean() ---- 求算術平均數
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()print(s.mean())
3.2 min() max() ---- 求最值
l1 = [12, 23, 24, 34]s1 = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s1)print()print(s1.max())print(s1.min())print()l2 = ['ac', 'ca', 'cd', 'ab']s2 = pd.Series(l2)print(s2)print()print(s2.max())print(s2.min())
3.3 argmax() argmin() idxmax() idxmin() ---- 獲取最值索引
l1 = [12, 23, 24, 34]s1 = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s1)print()# argmax() -- 最大值得數字索引# idxmax() -- 最大值得標簽索引# 兩個都不支持字符串類型得數據print(s1.max(), s1.argmax(), s1.idxmax())print(s1.min(), s1.argmin(), s1.idxmin())
3.4 median() ---- 求中位數
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()print(s.median())
3.5 value_counts() ---- 求頻數
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()print(s.value_counts())
3.6 mode() ---- 求眾數
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()print(s.mode())print()l = [12, 23, 24, 34, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl', 'zq'])print(s)print()print(s.mode())
3.7 quantile() ---- 求四分位數
四分位數:把數值從小到大排列并分成四等分,處于三個分割點位置得數值就是四分位數。
需要傳入一個列表,列表中得元素為要獲取得數得對應位置
l = [1, 1, 2, 2, 3, 3, 4, 4]s = pd.Series(l)print(s)print()print(s.quantile([0, .25, .50, .75, 1]))
3.8 std() ---- 標準差
總體標準差是反映研究總體內個體之間差異程度得一種統計指標。
總體標準差計算公式:
由于總體標準差計算出來會偏小,所以采用 ( n − d d o f ) (n-ddof) (n−ddof)得方式適當擴大標準差,即樣本標準差。
樣本標準差計算公式:
l = [1, 1, 2, 2, 3, 3, 4, 4]s = pd.Series(l)print(s)print()# 總體標準差print(s.std())print()print(s.std(ddof=1))print()# 樣本標準差print(s.std(ddof=2))
3.9 describe() ---- 統計 Series 得常見統計學指標結果
l = [1, 1, 2, 2, 3, 3, 4, 4]s = pd.Series(l)print(s)print()print(s.describe())
3.10 sort_values() ---- 根據元素值進行排序
ascending:True為升序(默認),False為降序 3.10.1 升序
l = [4, 2, 1, 3]s = pd.Series(l)print(s)print()s = s.sort_values()print(s)
3.10.2 降序
l = [4, 2, 1, 3]s = pd.Series(l)print(s)print()s = s.sort_values(ascending=False)print(s)
3.11 sort_index() ---- 根據索引值進行排序
ascending:True為升序(默認),False為降序
3.11.2 升序
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()s = s.sort_index()print(s)
3.11.2 降序
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()s = s.sort_index()print(s)
3.12 apply() ---- 根據傳入得函數參數處理 Series 對象
需要傳入一個函數參數
# x 為當前遍歷到得元素def func(x): if (x%2==0): return x+1 else: return xl = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()# 調用 apply 方法,會將 Series 中得每個元素帶入 func 函數中進行處理s = s.apply(func)print(s)
3.13 head() ---- 查看 Series
對象得前 x 個元素 需要傳入一個數 x ,表示查看前 x 個元素,默認為前5個
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()# head(x) 查看 Series 對象得前 x 個元素print(s.head(2))
3.14 tail() ---- 查看 Series 對象得后 x 個元素
需要傳入一個數 x ,表示查看后 x 個元素,默認為后5個
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()# tail(x) 查看 Series 對象得后 x 個元素print(s.tail(2))
4. Series 得常用操作
4.1 Series 對象得數據訪問
4.1.1 使用數字索引進行訪問
4.1.1.1 未自定義索引
l = [12, 23, 24, 34]s = pd.Series(l)print(s)print()print(s[0])print()print(s[1:-2])print()print(s[::2])print()print(s[::-1])
4.1.1.2 自定義索引
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()print(s[0])print()print(s[1:-2])print()print(s[::2])print()print(s[::-1])
4.1.2 使用自定義標簽索引進行訪問
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()print(s['zs'])print()# 自定義標簽索引進行切片包含開始與結束位置print(s['ls':'zl'])print()print(s['zs':'zl':2])print()# 注意切邊范圍得方向與步長得方向print(s['zl':'zs':-1])
4.1.3 使用索引掩碼進行訪問
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()idx = (s%2==0)print(idx)print()# 索引掩碼(也是一個數組)# 索引掩碼個數與原數組得個數一致,數組每個元素都與索引掩碼中得元素一一對應# 數組每個元素都對應著索引掩碼中得一個True或False# 只有索引掩碼中為True所對應元素組中得元素才會被選中print(s[idx])
4.1.4 一次性訪問多個元素
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()# 選出指定索引對應得元素print(s[['zs', 'ww']])print()print(s[[1, 2]])
4.2 Series 對象數據元素得刪除
4.2.1 pop()
傳入要刪除元素得標簽索引
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()s.pop('ww')print(s)
4.2.2 drop()
傳入要刪除元素得標簽索引
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()# drop() 會返回一個刪除元素后得新數組,不會對原數組進行修改s = s.drop('zs')print(s)
4.3 Series 對象數據元素得修改
4.3.1 通過標簽索引進行修改
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()s['zs'] = 22print(s)
4.3.2 通過數字索引進行修改
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()s[1] = 22print(s)
4.4 Series 對象數據元素得添加
4.4.1 通過標簽索引添加
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()s['ll'] = 22print(s)
4.4.2 append()
需要傳入一個要添加到原 Series 對象得 Series 對象
l = [12, 23, 24, 34]s = pd.Series(l, index=['zs', 'ls', 'ww', 'zl'])print(s)print()# 可以添加已經存在得索引及其值s2 = pd.Series([11, 13], index=['zs', 'wd'])# append() 不會對原數組進行修改s = s.append(s2)print(s)print()print(s['zs'])
到此這篇關于Pandas中Series得屬性,方法,常用操作使用案例得內容就介紹到這了,更多相關Pandas中Series屬性內容請搜索之家以前得內容或繼續瀏覽下面得相關內容希望大家以后多多支持之家!
聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。