如何在numpy数组中通过它的值更改变量

时间:2017-04-13 20:14:58

标签: python numpy math

我有这个numpy数组

a=np.array([[2*y, 0],[2*x + 1, 2*y + 4]])

我想用一个值替换(x,y),例如(1,1)。

如何使用这个新值来获得这个数组:

a=[[2,0],[3,6]]

1 个答案:

答案 0 :(得分:0)

您可以使用SymPy(符号数学包)和它的矩阵(数组):

>>> from sympy import Matrix
>>> from sympy.abc import x, y
>>> m = Matrix([[2*y, 0],[2*x + 1, 2*y + 4]])
>>> m
Matrix([
[    2*y,       0],
[2*x + 1, 2*y + 4]])

>>> n = m.subs({x: 1, y: 1})   # replace variables with values
>>> n
Matrix([
[2, 0],
[3, 6]])

>>> np.array(n).astype(int)    # convert to numpy array
array([[2, 0],
       [3, 6]])