我想写一个看起来像这样的python矩阵:
[P1^3,p2^3,p3^3,p4^3 ...]
[p1^2,p2^2,p3^2,p4^2 ...]
[p1^1,p2^1,p3^1,p4^1 ...]
[p1^0,p2^0,p3^0,p4^0 ...]
列数和索引p
由输入i
决定pi
我尝试了很多方法,但它不起作用。
有人请帮助我。
如果您真的是故意**
的,您可以使用库 ( http://www.numpy.org/^
)中的单个函数numpy.vander
(对于 Vandermonde)来执行此操作:numpy
In [13]: p = numpy.array([2, 3, 5, 10])
In [14]: numpy.vander(p, 4).T
Out[14]:
array([[ 8, 27, 125, 1000],
[ 4, 9, 25, 100],
[ 2, 3, 5, 10],
[ 1, 1, 1, 1]])
.T
after 函数调用转置数组,因为创建的数组是numpy.vander
您想要的转置。
[[y^x for y in [p1, p2, p3, p4]] for x in [3, 2, 1, 0]]
可能是你想要的。
这扩展到
[[y^3 for y in [p1, p2, p3, p4]],
[y^2 for y in [p1, p2, p3, p4]],
[y^1 for y in [p1, p2, p3, p4]],
[y^0 for y in [p1, p2, p3, p4]]]
请注意,这^
是 python 中的异或。
我不确定你想在这里做什么......
另外,你的意思是 numpy 矩阵/数组还是嵌套列表?