一、常用统计函数
函数 | 说明 | 示例代码 & 输出 |
---|---|---|
sum() |
计算数组元素的和 | np.sum([1,2,3]) → 6 |
mean() |
计算数组元素的均值 | np.mean([1,2,3,4]) → 2.5 |
var() |
计算方差(与均值的平方差的平均) | np.var([1,2,3,4]) → 1.25 |
std() |
计算标准差(方差的平方根) | np.std([1,2,3,4]) → 1.118 |
max() |
返回最大值 | np.max([5,2,9]) → 9 |
min() |
返回最小值 | np.min([5,2,9]) → 2 |
argmax() |
返回最大值索引 | np.argmax([5,2,9]) → 2 |
argmin() |
返回最小值索引 | np.argmin([5,2,9]) → 1 |
cumsum() |
计算累计和 | np.cumsum([1,2,3]) → [1,3,6] |
cumprod() |
计算累计积 | np.cumprod([1,2,3]) → [1,2,6] |
二、矩阵运算
import numpy as np
# 创建矩阵
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])
# 1. 矩阵乘法
print("矩阵乘法:")
print(A @ B) # 或 np.dot(A, B)
# 输出:
# [[19 22]
# [43 50]]
# 2. 转置矩阵
print("\n转置矩阵:")
print(A.T)
# 输出:
# [[1 3]
# [2 4]]
# 3. 逆矩阵
C = np.array([[1, 2], [3, 4]])
print("\n逆矩阵:")
print(np.linalg.inv(C))
# 输出:
# [[-2. 1. ]
# [ 1.5 -0.5]]
# 4. 行列式
print("\n行列式:")
print(np.linalg.det(C)) # 输出: -2.0
三、多维数组统计(沿轴计算)
arr = np.array([[1, 2, 3],
[4, 5, 6]])
# 沿列计算(axis=0)
print("列求和:", np.sum(arr, axis=0)) # [5 7 9]
print("列均值:", np.mean(arr, axis=0)) # [2.5 3.5 4.5]
# 沿行计算(axis=1)
print("行最大值:", np.max(arr, axis=1)) # [3 6]
print("行最小值索引:", np.argmin(arr, axis=1)) # [0 0]
四、关键概念说明
方差 (Variance)
var = mean(abs(x - x.mean())**2
反映数据离散程度(各数值与均值距离的平方的平均值)
标准差 (Standard Deviation)
方差的平方根,用于衡量数据波动大小累计和/积 (Cumulative Sum/Product)
逐步累积计算结果:
[a, b, c]
的累计和 →[a, a+b, a+b+c]