np.sum() 所有元素的和np.mean() 所有元素的平均值重点:axis0按列统计、axis1按行统计。axis0按列求平均纵向压缩axis1按行求平均横向压缩np.max() 所有元素的最大值np.min() 所有元素的最小值np.var () 方差第一步求平均值第二步每个元素减去平均值再平方第三步平方和除以 Nnp.std () → 标准差方差开平方根 标准差单位和原数据一致日常看波动优先用 np.std()np.argmin() #最小值的下标索引值np.argmax() 最大值的下标索引值不加 axis先展平再找加了 axisaxis0按列统计、axis1按行统计np.cumsum() 返回一个一维数组每个元素都是之前所有元素的累加和np.cumprod() 返回一个一维数组每个元素都是之前所有元素的累乘积importnumpyasnp# 2.7.2 统计函数defstatisticalFunction():array1np.array([[1,2,3],[4,5,6],[7,8,9]])print(array1\n,array1)print(array1形状\n,array1.shape)print()array2np.array([1,2,3])print(array2\n,array2)print(array2.ndim维度\n,array2.ndim)print(array2.shape形状Python用(3,)而不是(3)来区分元组和普通的括号数字。NumPy的shape返回的正是元组\n,array2.shape)# 1维 一条线上有3个点没有行和列的概念就是一条线print()# np.sum() 所有元素的和print(元素总和:\n,np.sum(array1))# np.mean() 所有元素的平均值重点:axis0按列统计、axis1按行统计。print(总和 ÷ 元素总个数:\n,np.mean(array1))print(axis0按列求平均纵向压缩:\n,np.mean(array1,axis0))print(axis1按行求平均横向压缩:\n,np.mean(array1,axis1))# axis0按列统计print(axis0按列求和---:\n,np.sum(array1,axis0))# axis1按行统计print(axis1按行求和---:\n,np.sum(array1,axis1))# np.max() 所有元素的最大值print(np.max(array1))# np.min() 所有元素的最小值print(np.min(array1))print()# ###################重点提前给同学们上强度进入机器学习用在哪################ np.var () → 方差就是用来描述一组数据波动大小、离散程度的指标。# 数据越乱越分散方差越大相反的数据越整齐越集中方差越小# 先明白理论最终结果详细数学计算步骤见最后print(所有元素的方差:\n,np.var(array1))# 方差 6.666666666666667....# np.std () → 标准差方差开平方根 标准差单位和原数据一致日常看波动优先用 np.std()# 方差是偏离的平方的平均值单位被平方了比如分的平方不好理解。# 标准差开个根号单位又回到和原始数据一样日常看数据波动更直观。print(所有元素的标准差:\n,np.std(array1))# 标准差 2.581988897471611# 一句话总结print(方差 → 先平方再平均描述波动大小但单位被平方了\n标准差 → 方差开根号单位和原始数据一致日常看波动优先用)print()### 不加 axis先展平再找# 加了 axisaxis0按列统计、axis1按行统计# np.argmax() 最大值的下标索引值print(整个数组展平最大值的下标索引值array1:\n,np.argmax(array1)) 逐列对比axis0 按列 第 0 列1、4、7 → 最大值 7索引 2 第 1 列2、5、8 → 最大值 8索引 2 第 2 列3、6、9 → 最大值 9索引 2 输出[2 2 2] print(axis0 按列找最大值索引:\n,np.argmax(array1,axis0))# 逐行对比axis1 按行 第 0 行1、2、3 → 最大值 3索引 2 第 1 行4、5、6 → 最大值 6索引 2 第 2 行7、8、9 → 最大值 9索引 2 输出[2 2 2] print(axis1 按行找最大值索引:\n,np.argmax(array1,axis1))# np.argmin() #最小值的下标索引值#通过上一个要求大家自学# np.cumsum() 返回一个一维数组每个元素都是之前所有元素的累加和print(所有元素的累加和:\n,np.cumsum(array1))# np.cumprod() 返回一个一维数组每个元素都是之前所有元素的累乘积print(所有元素的累乘积:\n,np.cumprod(array1))if__name____main__:statisticalFunction() 原始数据共 9 个元素默认ddof0分母 N 9既总体方差 我手上有全部数据直接除以总数就行 array1 [[1, 2, 3], [4, 5, 6], [7, 8, 9]] 第一步求平均值 (1 2 3 4 5 6 7 8 9)➗9 45➗9 5 第二步每个元素减去平均值再平方 (1 - 5)² (-4)² 16 (2 - 5)² (-3)² 9 (3 - 5)² (-2)² 4 (4 - 5)² (-1)² 1 (5 - 5)² 0² 0 (6 - 5)² 1² 1 (7 - 5)² 2² 4 (8 - 5)² 3² 9 (9 - 5)² 4² 16 平方和 16 9 4 1 0 1 4 9 16 60 第三步平方和除以 N 方差 60 / 9 6.666666... np.var(array1) # 6.666666666666667 图形化表达 数组元素: 1 2 3 4 5 6 7 8 9 偏离均值: -4 -3 -2 -1 0 1 2 3 4 (均值5) 平方偏差: 16 9 4 1 0 1 4 9 16 └─────── 平方和 60 ───────--------------┘ 方差 60 ÷ 9 ≈ 6.667 标准差 √6.666... 2.581988897471611