叫我学弟 2020-06-15 13:16 采纳率: 0%
浏览 291

numpy建一个随机矩阵,如何让矩阵每行他自己是指定列表的不重复随机抽样?而不是整个矩阵是指定列表的不重复随机抽样。

有个列表,里面有30个1和60个0,
x = [1] * 30 + [0] * 60

现需要生成一个10000*90的矩阵,矩阵每行均为列表x的随机抽样。

尝试过numpy.random.choice方法,将replace参数改为True,但这种是整个矩阵为列表x的随机抽样,
此时就报错了,因为列表是90个元素,不重复抽样最多抽出90个,而矩阵有90万个数。

怎样才能实现矩阵每行他自己是列表x的随机抽样呢?求大佬解答。

  • 写回答

1条回答 默认 最新

  • Hubans 2020-06-15 13:47
    关注

    对10000*90的矩阵,每一行单独随机排序,然后整合成一个矩阵

    import random
    x = [1] * 30 + [0] * 60
    data = []
    for i in range(10000):
        y = x
        random.shuffle(y)
        data.append([y])
    print(data)
    
    评论

报告相同问题?

悬赏问题

  • ¥20 access中怎么分割分别获取一下图中的值
  • ¥15 keras_tcn已经安装成功,还是显示ModuleNotFoundError: No module named 'keras_tcn'
  • ¥15 类图中关联与聚合的区别
  • ¥15 ENVI高分五号去除云层的方法
  • ¥15 16进制数据如何得到奇偶校验位
  • ¥15 求合并两个字节流VB6代码
  • ¥15 Pyqt 如何正确的关掉Qthread,并且释放其中的锁?
  • ¥30 网站服务器通过node.js部署了一个项目!前端访问失败
  • ¥15 WPS访问权限不足怎么解决
  • ¥15 java幂等控制问题