Numpy 中的聚合操作

# 导包
import numpy as np

sum

np.random.seed(10)
L = np.random.random(100) 
sum(L) 
np.sum(L) 

min 

np.min(L) 

max 

np.max(L)

多维度聚合 

X = np.arange(16).reshape(4,-1) 
"""
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11],
       [12, 13, 14, 15]])
"""
# np.sum(X)   # 120
# np.sum(X, axis=0)  # array([24, 28, 32, 36])
# np.sum(X, axis=1)  # array([ 6, 22, 38, 54])

  注意:axis描述的是将要被压缩的维度

其他聚合操作

.prod()

  矩阵中所有元素乘积 

np.prod(X)  # 0
np.prod(X + 1)  # 2004189184

.mean()

  均值

np.mean(X)   # 7.5

.median()

  中位数

np.median(X)  # 7.5

.percentile()

  百分位数

np.random.seed(100)
big_array = np.random.random(1000000) 
# #取百分位分位点上的数,50%分位数
np.percentile(big_array, q=50)   # 0.4998651570582321
for percent in [0, 25, 50, 75, 100]: 
    print(np.percentile(big_array, q=percent)) 
"""
1.3820074052928177e-06
0.24934216925258532
0.4998651570582321
0.7497718195194847
0.9999960107137339
"""
np.var(big_array) 
np.std(big_array) 

.std()

x = np.random.normal(0, 1, 1000000) 
np.mean(x) 
np.std(x) 

猜你喜欢

转载自www.cnblogs.com/zry-yt/p/11820478.html
今日推荐