【发布时间】:2018-08-21 18:49:34
【问题描述】:
我有一个大小(例如 1201)和一个任意列表(例如 [1,2,3])
我想让列表有 1200 个值,大致相等地重复每个不同的值。因此,在这种情况下,新列表将是 [1,1,...,2,2...,3,3],其中有 400 个 1、400 个 2 和 401 个 3。
也许我没有解释清楚 - 它不必均匀重复,比如如果有一个奇数。
【问题讨论】:
-
np.repeat是你的朋友。只需使用np.repeat(your_list, 400) -
好的,但是如果我有一个奇数呢?
-
那就发挥创意吧。也许使数组比它需要的长一个并将其剪辑到您想要的长度。例如,您可以使用
np.repeat(arr, size//len(arr)+1)[:size] -
查看我的答案的编辑。