pandas的資料累計統計分析

2021-10-03 10:53:25 字數 2081 閱讀 5177

本文的主要內容是基於中國大學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資料型別...