【发布时间】:2018-11-06 07:59:55
【问题描述】:
我有一个如下的 numpy 数组:
Xtrain = np.array([[1, 2, 3],
[4, 5, 6],
[1, 7, 3]])
我想单独打乱每行的项目,但不希望每行的打乱都相同(在几个示例中只是打乱列顺序)。
例如,我想要如下输出:
output = np.array([[3, 2, 1],
[4, 6, 5],
[7, 3, 1]])
如何以有效的方式随机随机打乱每一行?我的实际 np 数组超过 100000 行和 1000 列。
【问题讨论】:
-
@Kasramvd 根据 np 文档,多维数组仅沿第一轴打乱:
>>> >>> arr = np.arange(9).reshape((3, 3)) >>> np.random.shuffle(arr) >>> arr array([[3, 4, 5], [6, 7, 8], [0, 1, 2]]) -
是的
suffle()不接受轴参数。这是一个类似的问题stackoverflow.com/questions/50415972/… -
@Kasramvd 如果我理解的话,这个问题想要改变行顺序,而不是行中的实际值。