本文的主要內容是基於中國大學mooc(慕課)中的「python資料分析與視覺化」課程進行整理和總結。
資料的累計統計分析是能夠對序列中的前n個數進行累計運算,對於一些大量的資料分析中,可以減少for迴圈的使用,也使得資料的運算變得更加靈活。pandas提供了一組資料累計統計分析函式,這些函式都適用於series和dataframe型別。
.cumsum()
依次給出前1,2,……,n個數的和
.cumprod()
依次給出前1,2,……,n個數的積
.cummin()
依次給出前1,2,……,n個數的最小值
.cummax()
依次給出前1,2,……,n個數的最大值
b = pd.dataframe(np.arange(20)
.reshape(4,
5), index=
['c'
,'a'
,'d'
,'b'])
b 012
34c 0123
4a 567
89d 10
1112
1314
b 15
1617
1819
b.cumsum()0
1234
c 0123
4a 579
1113
d 15
1821
2427
b 30
3438
4246
b.cumprod()0
1234
c 0123
4a 0614
2436
d 066
168312
504b 0
1056
2856
5616
9576
除了以上基本的累計統計函式外,pandas還提供了適用於series和dataframe型別的滾動計算函式,也叫視窗計算函式,也就是說這個函式是依次計算相鄰的w個元素的值,而非累計從0開始計算。
.rolling(w).sum()
計算相鄰w個元素的和
.rolling(w).mean()
計算相鄰w個元素的算術平均值
.rolling(w).var ()
計算相鄰w個元素的方差
.rolling(w).std()
計算相鄰w個元素的和
.rolling(w).min() .max()
計算相鄰w個元素的最小值,最大值
b = pd.dataframe(np.arange(20)
.reshape(4,
5), index=
['c'
,'a'
,'d'
,'b'])
b 012
34c 0123
4a 567
89d 10
1112
1314
b 15
1617
1819
b.rolling(2)
.sum()
0123
4c nan nan nan nan nan
a 5.0
7.09.0
11.0
13.0
d 15.0
17.0
19.0
21.0
23.0
b 25.0
27.0
29.0
31.0
33.0
b.rolling(3)
.sum()
0123
4c nan nan nan nan nan
a nan nan nan nan nan
d 15.0
18.0
21.0
24.0
27.0
b 30.0
33.0
36.0
39.0
42.0
pandas的統計分析
import pandas as pd import numpy as np data pd.read excel meal order detail.xlsx print data n data print data 的列索引 n data.columns print data 的資料型別 n d...
Pandas庫 資料的基本統計分析
類似numpy庫,可見此博文 numpy的統計函式 1.0 適用於series和dataframe資料型別 函式名描述sum 求和mean 求期望count 求非nan值的個數 std 求標準差 var 求方差max 最大值min 最小值median 中位數2.0 只適用於series型別 方法名描...
Pandas庫(2) 資料的統計分析
1.0 pandas 中的資料型別 series dataframe 一維二維的 型 每個元素都有各自的標籤 數字 字元 可儲存多個不同型別資料,每個軸都有標籤 可視為乙個由帶標籤的元素組成的 numpy 陣列 可視為乙個 series 的字典 2.0 適用於series和dataframe資料型別...