我有一个数组y
和一个CSR稀疏的矩阵X
。
我需要随机排序y
和X,其中y
的每一行对应X
中的一行。
使用NumPy,我该怎么做?
答案 0 :(得分:2)
为了获得随机排序,您可以尝试使用np.random.shuffle
函数。
# Create an array of indices
indices = np.arange(y.size)
# Randomize it
np.random.shuffle(indices)
现在,您可以使用indices
通过精确的索引y
随机化y_new = y[indices]
。
您可以使用相同的indices
重新排序矩阵,但要小心,CSR矩阵不支持花式索引。您必须将其转换为LIL,重新排序,然后将其重新转换为CSR。