【发布时间】:2011-05-13 09:30:41
【问题描述】:
我需要一些帮助来解决一个问题。在 Python 中:
a=array([2,2])
b=ones((2,10))
我想知道是否有一个函数可以让我减去 b-a 以获得一个充满 -1 的 2x10 数组。
我可以用一维数组来做,我只是想知道是否可以用二维数组来做。
谢谢
【问题讨论】:
标签: python arrays numpy operations
我需要一些帮助来解决一个问题。在 Python 中:
a=array([2,2])
b=ones((2,10))
我想知道是否有一个函数可以让我减去 b-a 以获得一个充满 -1 的 2x10 数组。
我可以用一维数组来做,我只是想知道是否可以用二维数组来做。
谢谢
【问题讨论】:
标签: python arrays numpy operations
给a添加一个新维度:
b - a[:,None]
其中a[:,None] 变为array([[2], [2]]),这是一个 2x1 数组,您可以从 2x10 数组中减去该数组,得到一个全为 -1 的 2x10 数组。
【讨论】:
numpy.newaxis 来代替None。另请参阅stackoverflow.com/questions/944863/…
你想要一个 2x10 的数组,里面全是 -1。
你为什么不这样做:
b = np.ones((2, 10)) * -1
array([[-1., -1., -1., -1., -1., -1., -1., -1., -1., -1.],
[-1., -1., -1., -1., -1., -1., -1., -1., -1., -1.]])
【讨论】: