python - 无需替换即可生成置换数组

我正在尝试获取大小为 (1000, 7) 的矩阵,其中每一行都是数字 0 到 6 的随机排列。 我正在使用以下代码来实现需求。

import numpy as np

permute_array = []
for i in range(1000):
    permute_array.append(np.random.permutation(7))
permute_array = np.array(permute_array)

这很慢,因为 for 循环需要相当长的时间才能运行。是否有生成此数组的一次性方法?谢谢。

最佳答案

import numpy as np
permute_array = np.argsort(np.random.rand(1000, 7), axis=1)

https://stackoverflow.com/questions/67616804/

相关文章:

c# - 在不使用 lambda 表达式的情况下从该方法传递额外参数时在方法内部订阅事件

java - 如何断言数组中某个值的存在

typescript - 没有泛型的类型推断?

python - 如何从 yfinance 数据中删除时区?

r - 使用 melt 将数据合并到一个长列中

c# - 如何将普通字符串转换为十六进制的等效字节数组?

android - Jetpack 撰写 : Textfield and FAB not using

kubernetes - Helm : How to avoid recreating secret

pandas - 如何通过每行的第一个单词将 pandas 中的行汇总为该第一个单词的聚合?

python - 我是否需要清理/删除在部署我的 Cloud Run 实例时创建的图像?