第一种
np矩阵可以直接与标量运算
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
>>> import numpy as np >>>arr1 = np.arange( 12 ).reshape([ 2 , 2 , 3 ]) >>>arr1 array([[[ 0 , 1 , 2 ], [ 3 , 4 , 5 ]], [[ 6 , 7 , 8 ], [ 9 , 10 , 11 ]]]) >>>arr1 * 5 array([[[ 0 , 5 , 10 ], [ 15 , 20 , 25 ]], [[ 30 , 35 , 40 ], [ 45 , 50 , 55 ]]]) >>>arr1 - 5 array([[[ - 5 , - 4 , - 3 ], [ - 2 , - 1 , 0 ]], [[ 1 , 2 , 3 ], [ 4 , 5 , 6 ]]]) >>>arr1 * * 2 array([[[ 0 , 1 , 4 ], [ 9 , 16 , 25 ]], [[ 36 , 49 , 64 ], [ 81 , 100 , 121 ]]]) |
第二种
若arr1是高维数组,如果arr2的维度与arr1某个子数组维度相同,那么可以相互作运算。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
PyDev console: starting. Python 3.7 . 3 (v3. 7.3 :ef4ec6ed12, Mar 25 2019 , 16 : 52 : 21 ) [Clang 6.0 (clang - 600.0 . 57 )] on darwin >>> import numpy as np >>>arr1 = np.arange( 12 ).reshape([ 2 , 2 , 3 ]) >>>arr1 array([[[ 0 , 1 , 2 ], [ 3 , 4 , 5 ]], [[ 6 , 7 , 8 ], [ 9 , 10 , 11 ]]]) >>>arr2 = np.array([ 2 , 2 , 2 ]) >>>arr2 array([ 2 , 2 , 2 ]) >>>arr1 * arr2 array([[[ 0 , 2 , 4 ], [ 6 , 8 , 10 ]], [[ 12 , 14 , 16 ], [ 18 , 20 , 22 ]]]) >>>arr3 = np.arange( 6 ).reshape([ 2 , 3 ]) >>>arr1 * arr3 array([[[ 0 , 1 , 4 ], [ 9 , 16 , 25 ]], [[ 0 , 7 , 16 ], [ 27 , 40 , 55 ]]]) |
补充:python 按不同维度求和,最值,均值
当变量维数加大时很难想象是怎样按不同维度求和的,高清楚一个,其他的应该就很清楚了,什么都不说了,上例子,例子一看便明白…..
1
2
3
|
a = range ( 27 ) a = np.array(a) a = np.reshape(a,[ 3 , 3 , 3 ]) |
输出a的结果是:
1
2
3
4
5
6
7
8
9
|
array([[[ 0 , 1 , 2 ], [ 3 , 4 , 5 ], [ 6 , 7 , 8 ]], [[ 9 , 10 , 11 ], [ 12 , 13 , 14 ], [ 15 , 16 , 17 ]], [[ 18 , 19 , 20 ], [ 21 , 22 , 23 ], [ 24 , 25 , 26 ]]]) |
我们来看看 aa=np.sum(a,-1)的输出:
1
2
3
|
array([[ 3 , 12 , 21 ], [ 30 , 39 , 48 ], [ 57 , 66 , 75 ]]) |
bb=np.sum(a,2) 的输出
1
2
3
|
array([[ 3 , 12 , 21 ], [ 30 , 39 , 48 ], [ 57 , 66 , 75 ]]) |
cc=np.sum(a,0)的输出:
1
2
3
|
array([[ 27 , 30 , 33 ], [ 36 , 39 , 42 ], [ 45 , 48 , 51 ]]) |
cc=np.sum(a,1)的输出:
1
2
3
|
array([[ 9 , 12 , 15 ], [ 36 , 39 , 42 ], [ 63 , 66 , 69 ]]) |
第-1个维度与第2个维度是一样的,第-1个维度实际是指最后一个维度。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。
原文链接:https://blog.csdn.net/weixin_43941834/article/details/99714390