假设我有一个垂直向量X = [1,[2],[3]]和整数pow = 2。 在numpy中是否有一个函数,它将返回从0的幂到pow(pow = 2)的每行向量x的矩阵
以上示例应返回矩阵
[[1, 1, 1],
[1, 2, 4],
[1, 3, 9]]
我查看了numpy.power,但是返回了一个数组。
答案 0 :(得分:1)
在rules of broadcasting
之后,我们可以扩展到2D,然后使用范围数组提升 -
X[:,None]**np.arange(3) # Or np.power(X[:,None], np.arange(3))
示例运行 -
In [7]: X = np.array([1,2,3])
In [8]: X[:,None]**np.arange(3)
Out[8]:
array([[1, 1, 1],
[1, 2, 4],
[1, 3, 9]])
如果X
已经延长,只需加注 -
In [24]: X = np.array([[1],[2],[3]])
In [25]: X**np.arange(3)
Out[25]:
array([[1, 1, 1],
[1, 2, 4],
[1, 3, 9]])
答案 1 :(得分:1)
我认为没有特定的功能,但您可以使用阵列广播。
ItemClick="{Binding DataContext.ClickCommand, ElementName=HeaderList}"
答案 2 :(得分:1)
您正在寻找的功能是
答案 3 :(得分:0)
如果n
很大,我建议您使用嵌套循环。计算功率很昂贵。做这样的事情:
arr = [1]
for i in range(1, p + 1):
arr.append(p * arr[-1])