我想实现一个类似的功能,并且想要接受一个数组或数字,我传递给numpy.ones
。numpy零如何实现参数形状?
具体来说,我想这样做:
def halfs(shape):
shape = numpy.concatenate([2], shape)
return 0.5 * numpy.ones(shape)
例输入 - 输出对:
# default
In [5]: beta_jeffreys()
Out[5]: array([-0.5, -0.5])
# scalar
In [5]: beta_jeffreys(3)
Out[3]:
array([[-0.5, -0.5, -0.5],
[-0.5, -0.5, -0.5]])
# vector (1)
In [3]: beta_jeffreys((3,))
Out[3]:
array([[-0.5, -0.5, -0.5],
[-0.5, -0.5, -0.5]])
# vector (2)
In [7]: beta_jeffreys((2,3))
Out[7]:
array([[[-0.5, -0.5, -0.5],
[-0.5, -0.5, -0.5]],
[[-0.5, -0.5, -0.5],
[-0.5, -0.5, -0.5]]])
你能解释一下你越是想完成什么? – eumiro 2010-10-26 12:35:15
我已更新该问题。 – 2010-10-26 12:37:04
你给你的函数一个形状,你想添加一个维(2)并填充0.5? – eumiro 2010-10-26 12:40:52