给出两个矩阵f和x:
filter()
如何将矩阵运算符f元素化地应用于x(考虑到函数可能更复杂,所以它只是一个例子)?
答案 0 :(得分:1)
矩阵基本上不是为支持这些功能而设计的。相反,您可以使用一个接受数组的函数并返回预期的结果。您应该使用数组而不是矩阵的原因是它们更灵活,可以更好地采用python操作,就像本地解压缩一样。
In [41]: def apply_f(matrix):
...: ((x, y), (z, t)) = matrix
...: return np.array([[1, y +1], [np.log(z), np.exp(t)]])
...:
In [42]: x = np.array([[3, 5], [10, 8]])
In [43]: apply_f(x)
Out[43]:
array([[1.00000000e+00, 6.00000000e+00],
[2.30258509e+00, 2.98095799e+03]])