NumPy 统计函数与矩阵运算指南

发布于:2025-06-30 ⋅ 阅读:(16) ⋅ 点赞:(0)
一、常用统计函数
函数 说明 示例代码 & 输出
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
  1. 反映数据离散程度(各数值与均值距离的平方的平均值)

  2. 标准差 (Standard Deviation)
    方差的平方根,用于衡量数据波动大小

  3. 累计和/积 (Cumulative Sum/Product)
    逐步累积计算结果:
    [a, b, c] 的累计和 → [a, a+b, a+b+c]


网站公告

今日签到

点亮在社区的每一天
去签到