减去列表和矩阵Python的元素

时间:2017-06-11 12:03:06

标签: python list numpy matrix

我是Python新手,对numpy有疑问 有一个矩阵:

 x = np.arange(-1,1.1,0.7)
 y = np.arange(-1,1.1,0.7)
 X, Y = np.meshgrid(x,y)

#Result for X

  [[-1.  -0.3  0.4  1.1]
   [-1.  -0.3  0.4  1.1]
   [-1.  -0.3  0.4  1.1]
   [-1.  -0.3  0.4  1.1]]

和一个清单:

RX = [0, 0.1, 0.2]

我如何从X的每个元素中减去RX列表?

#result array

[[[-1. , -1.1, -1.2]
 [-0.3, -0.4, -0.5]
 [ 0.4,  0.3,  0.2]
 [ 1.1,  1. ,  0.9]]

 [[-1. , -1.1, -1.2]
 [-0.3, -0.4, -0.5]
 [ 0.4,  0.3,  0.2]
 [ 1.1,  1. ,  0.9]]

 [[-1. , -1.1, -1.2]
  [-0.3, -0.4, -0.5]
  [ 0.4,  0.3,  0.2]
  [ 1.1,  1. ,  0.9]]

 [[-1. , -1.1, -1.2]
  [-0.3, -0.4, -0.5]
  [ 0.4,  0.3,  0.2]
  [ 1.1,  1. ,  0.9]]]

和sum matrices(从result_array矩阵中创建一行)。

[[-3.2 , -1.2, 0.9, 3]
[-3.2 , -1.2, 0.9, 3]
[-3.2 , -1.2, 0.9, 3]
[-3.2 , -1.2, 0.9, 3]]

1 个答案:

答案 0 :(得分:0)

你可以通过

来做到
newvals = np.array([[val - np.array(A) for val in line] for line in X])