在numpy中重复具有不同重复值的索引
repeat indices with different repeat values in numpy
我正在寻找一种使用 Numpy 执行以下操作的有效方法:
给定一个 counts
正整数数组,例如包含:
[3, 1, 0, 6, 3, 2]
我想生成另一个包含第一个索引的数组,其中索引 i
重复 counts[i]
次:
[0 0 0 1 3 3 3 3 3 3 4 4 4 5 5]
我的问题是这个数组可能非常大,我正在寻找一种矢量(或快速)方法来执行此操作。
你可以用 numpy.repeat
:
import numpy as np
arr = np.array([3, 1, 0, 6, 3, 2])
repix = np.repeat(np.arange(arr.size), arr)
print(repix)
输出:
[0 0 0 1 3 3 3 3 3 3 4 4 4 5 5]
我正在寻找一种使用 Numpy 执行以下操作的有效方法:
给定一个 counts
正整数数组,例如包含:
[3, 1, 0, 6, 3, 2]
我想生成另一个包含第一个索引的数组,其中索引 i
重复 counts[i]
次:
[0 0 0 1 3 3 3 3 3 3 4 4 4 5 5]
我的问题是这个数组可能非常大,我正在寻找一种矢量(或快速)方法来执行此操作。
你可以用 numpy.repeat
:
import numpy as np
arr = np.array([3, 1, 0, 6, 3, 2])
repix = np.repeat(np.arange(arr.size), arr)
print(repix)
输出:
[0 0 0 1 3 3 3 3 3 3 4 4 4 5 5]