我正在开发一个确定线是否相交的程序。我正在使用矩阵来做到这一点。我了解所有数学概念,但我是 Python 和 NumPy 的新手。
我想将斜率变量和 yint 变量添加到新矩阵中。他们都是花车。我似乎无法弄清楚输入它们的正确格式。这是一个例子:
import numpy as np
x = 2
y = 5
w = 9
z = 12
我知道如果我只是输入原始数字,它看起来像这样:
matr = np.matrix('2 5; 9 12')
不过,我的目标是输入变量名而不是整数。
我正在开发一个确定线是否相交的程序。我正在使用矩阵来做到这一点。我了解所有数学概念,但我是 Python 和 NumPy 的新手。
我想将斜率变量和 yint 变量添加到新矩阵中。他们都是花车。我似乎无法弄清楚输入它们的正确格式。这是一个例子:
import numpy as np
x = 2
y = 5
w = 9
z = 12
我知道如果我只是输入原始数字,它看起来像这样:
matr = np.matrix('2 5; 9 12')
不过,我的目标是输入变量名而不是整数。
你可以做:
M = np.matrix([[x, y], [w, z]])
# or
A = np.array([[x, y], [w, z]])
我也包括了数组,因为我建议使用数组而不是矩阵。尽管起初矩阵似乎是一个好主意(或者至少对我来说是这样),但是通过使用数组,您可以避免很多麻烦。以下是两者的比较,可帮助您确定哪个适合您。
我能想到的数组的唯一缺点是矩阵乘法运算不那么漂亮:
# With an array the matrix multiply like this
matrix_product = array.dot(vector)
# With a matrix it look like this
matrix_product = matrix * vector
你能像这样格式化字符串吗?:
import numpy as np
x = 2
y = 5
w = 9
z = 12
matr = np.matrix('%s %s; %s %s' % (x, y, w, z))