我有几个清单:
a = [1,2,3]
b = [1,2,3,4,5,6]
其长度可变。
我想返回一个长度为 5 的向量,这样如果输入列表长度 5,那么它将在第 5 个元素处被截断。
例如,输入a
会回来np.array([1,2,3,0,0])
,并输入b
会回来np.array([1,2,3,4,5])
.
我觉得我应该能够使用np.pad http://docs.scipy.org/doc/numpy/reference/generated/numpy.pad.html,但我似乎无法遵循文档。
我不确定这可能慢或快,但它适合您的目的。
In [22]: pad = lambda a,i : a[0:i] if len(a) > i else a + [0] * (i-len(a))
In [23]: pad([1,2,3], 5)
Out[23]: [1, 2, 3, 0, 0]
In [24]: pad([1,2,3,4,5,6,7], 5)
Out[24]: [1, 2, 3, 4, 5]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)