如何使用 numpy 获取所有可能的随机组合

2024-01-02

我有一个长度为 NumPy 的数组N含有X那些和N-X零。我想生成数组的所有可能的随机组合。

例如,当N是 5 并且X是2,我需要以下组合,

[0, 0, 1, 1, 0]
[1, 1, 0, 0, 0]
[0, 0, 0, 1, 1]
[0, 0, 1, 0, 1]
[1, 0, 0, 1, 0]
[0, 1, 1, 0, 0]
[0, 1, 0, 1, 0]
[1, 0, 1, 0, 0]
[0, 1, 0, 0, 1]
[1, 0, 0, 0, 1]

在 numpy 中有没有直接的方法可以做到这一点?


组合在 Python 标准库中实现,位于itertools。它挑选X列表中的元素N,所以你可以让它选择索引并将它们设置为1:

import numpy as np
from itertools import combinations

N = 5
X = 2

for combination in combinations(range(N), X):
    arr = np.zeros(N)
    arr[list(combination)] = 1
    print(arr)

Output:

[1. 1. 0. 0. 0.]
[1. 0. 1. 0. 0.]
[1. 0. 0. 1. 0.]
[1. 0. 0. 0. 1.]
[0. 1. 1. 0. 0.]
[0. 1. 0. 1. 0.]
[0. 1. 0. 0. 1.]
[0. 0. 1. 1. 0.]
[0. 0. 1. 0. 1.]
[0. 0. 0. 1. 1.]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 numpy 获取所有可能的随机组合 的相关文章

  • 如何在序列化器创建方法中获取 URL Id?

    我有以下网址 url r member P
  • 从 ffmpeg 获取实时输出以在进度条中使用(PyQt4,stdout)

    我已经查看了很多问题 但仍然无法完全弄清楚 我正在使用 PyQt 并且希望能够运行ffmpeg i file mp4 file avi并获取流式输出 以便我可以创建进度条 我看过这些问题 ffmpeg可以显示进度条吗 https stack
  • 将数据帧行转换为字典

    我有像下面的示例数据这样的数据帧 我正在尝试将数据帧中的一行转换为类似于下面所需输出的字典 但是当我使用 to dict 时 我得到了索引和列值 有谁知道如何将行转换为像所需输出那样的字典 任何提示都非常感激 Sample data pri
  • Argparse nargs="+" 正在吃位置参数

    这是我的解析器配置的一小部分 parser add argument infile help The file to be imported type argparse FileType r default sys stdin parser
  • python suds SOAP 请求中的名称空间前缀错误

    我使用 python suds 来实现客户端 并且在发送的 SOAP 标头中得到了错误的命名空间前缀 用于定义由element ref 在 wsdl 中 wsdl 正在引用数据类型 xsd 文件 请参见下文 问题出在函数上GetRecord
  • TensorFlow的./configure在哪里以及如何启用GPU支持?

    在我的 Ubuntu 上安装 TensorFlow 时 我想将 GPU 与 CUDA 结合使用 但我却停在了这一步官方教程 http www tensorflow org get started os setup md 这到底是哪里 con
  • 如何设置 Celery 来调用自定义工作器初始化?

    我对 Celery 很陌生 我一直在尝试设置一个具有 2 个独立队列的项目 一个用于计算 另一个用于执行 到目前为止 一切都很好 我的问题是执行队列中的工作人员需要实例化一个具有唯一 object id 的类 每个工作人员一个 id 我想知
  • 奇怪的 MySQL Python mod_wsgi 无法连接到 'localhost' (49) 上的 MySQL 服务器问题

    StackOverflow上也有类似的问题 但我还没有发现完全相同的情况 这是在使用 MySQL 的 OS X Leopard 机器上 一些起始信息 MySQL Server version 5 1 30 Apache 2 2 13 Uni
  • 首先对列表中最长的项目进行排序

    我正在使用 lambda 来修改排序的行为 sorted list key lambda item item lower len item 对包含元素的列表进行排序A1 A2 A3 A B1 B2 B3 B 结果是A A1 A2 A3 B
  • Seaborn Pairplot 图例不显示颜色

    我一直在学习如何在Python中使用seaborn和pairplot 这里的一切似乎都工作正常 但由于某种原因 图例不会显示相关的颜色 我无法找到解决方案 因此如果有人有任何建议 请告诉我 x sns pairplot stats2 hue
  • Pandas 根据 diff 列形成簇

    我正在尝试使用 Pandas 根据表示时间 以秒为单位 的列中的差异来消除数据框中的一些接近重复项 例如 import pandas as pd numpy as np df pd DataFrame 1200 1201 1233 1555
  • 将 2D NumPy 数组按元素相乘并求和

    我想知道是否有一种更快的方法 专用 NumPy 函数来执行 2D NumPy 数组的元素乘法 然后对所有元素求和 我目前使用np sum np multiply A B 其中 A B 是相同维度的 NumPy 数组m x n 您可以使用np
  • 无法在 osx-arm64 上安装 Python 3.7

    我正在尝试使用 Conda 创建一个带有 Python 3 7 的新环境 例如 conda create n qnn python 3 7 我收到以下错误 Collecting package metadata current repoda
  • 使用 NumPy 将非均匀数据从文件读取到数组中

    假设我有一个如下所示的文本文件 33 346 1223 10 23 11 23 12 23 13 23 14 23 15 23 16 24 10 24 11 24 12 24 13 24 14 24 15 24 16 25 14 25 15
  • mac osx 10.8 上的初学者 python

    我正在学习编程 并且一直在使用 Ruby 和 ROR 但我觉得我更喜欢 Python 语言来学习编程 虽然我看到了 Ruby 和 Rails 的优点 但我觉得我需要一种更容易学习编程概念的语言 因此是 Python 但是 我似乎找不到适用于
  • 使用yield 进行字典理解

    作为一个人为的例子 myset set a b c d mydict item yield join item s for item in myset and list mydict gives as cs bs ds a None b N
  • 当鼠标悬停在上面时,intellisense vscode 不显示参数或文档

    我正在尝试将整个工作流程从 Eclipse 和 Jupyter Notebook 迁移到 VS Code 我安装了 python 扩展 它应该带有 Intellisense 但它只是部分更糟糕 我在输入句点后收到建议 但当将鼠标悬停在其上方
  • Ubuntu 上的 Python 2.7

    我是 Python 新手 正在 Linux 机器 Ubuntu 10 10 上工作 它正在运行 python 2 6 但我想运行 2 7 因为它有我想使用的功能 有人敦促我不要安装 2 7 并将其设置为我的默认 python 我的问题是 如
  • 在Python中按属性获取对象列表中的索引

    我有具有属性 id 的对象列表 我想找到具有特定 id 的对象的索引 我写了这样的东西 index 1 for i in range len my list if my list i id specific id index i break
  • Scrapy Spider不存储状态(持久状态)

    您好 有一个基本的蜘蛛 可以运行以获取给定域上的所有链接 我想确保它保持其状态 以便它可以从离开的位置恢复 我已按照给定的网址进行操作http doc scrapy org en latest topics jobs html http d

随机推荐

  • 可以使用条件来确定泛型的类型吗?

    在讨论这个问题之前 我将首先解释我想要做什么以及我是如何陷入困境的 作为我自己的学习练习 我解决了一些已经在 Objective C 中解决的问题 看看如何使用 Swift 以不同的方式解决它们 我遇到的具体情况是一个小片段 它捕获更改之前
  • Mathematica:将参数的默认值设置为非常量?

    我可以将函数参数的默认值设置为某个值吗 那不是恒定的吗 例子 tod Mod AbsoluteTime 86400 f x tod x 在上面 tod 每次评估时都会改变 但 f 却会改变 不是 f 产生 f x 42054 435657
  • React 生产和 Cookie 问题

    我开发了一个 React 应用程序和一个 Express API 本地主机中的一切都工作正常 我将 API 移至 digitalocean Droplet 它只是 IP 地址 而且是 HTTP 当我在开发环境中使用 React 应用程序的
  • 当 url 无效时,webrequest.begingetresponse 花费太多时间

    我正在使用 webrequest 来获取一些图像数据 网址有时可能无效 如果 URL 无效 begingetresponse 所花费的时间等于超时时间 在此期间 控件也会变得无响应 换句话说 异步回调不是异步工作的 这是预期的行为吗 try
  • NLog 未在所有级别上记录日志

    ASPNET Core 2 0 与最新的 Nlog 所有配置文件均正确加载 我的配置文件很简单 我只是希望它记录所有内容
  • 如何修复 Azure CI 上的控制台日志编码问题?

    当我在发布管道的 docker 容器中运行 Cypress 时 我在 Azure CI 上得到了这个信息 我猜这可能是因为 Cypress docker NodeJS 或 CI 本身的某些设置 https i stack imgur com
  • 无法在 App Engine Python 上通过 Cloud SQL 使用 utf8mb4 字符集

    我已经设置了一个 CloudSQL 实例 尝试将其与 AppEngine 上的 Django 应用程序一起使用 我已确认服务器已设置为使用utf8mb4通过 CloudSQL 控制台为我的数据库设置字符集 utf8mb4 utf8mb4 u
  • 具有 Windows 身份验证的 ASP.NET 角色

    来自 ASP 新手的超级简单问题 我正在开发一个内部专用的 ASP NET 网站 该网站全面使用 Windows 集成身份验证 我想将三个角色与该站点关联 用户 经理和管理员 该网站向整个组织开放 因此任何经过身份验证的人都是用户 除非他们
  • 如何在android中读取xmpp消息标签的自定义属性?

    我需要接收的 xml 是
  • 在 Swift 中计算预计到达时间

    我试图快速计算两个位置之间的估计旅行时间 步行 用户进行注释 这是我当前的代码 它不会引发任何导致程序崩溃的错误 而只会返回 请求 ETA 时出错 import UIKit import MapKit class LocationObjec
  • 解析php中的URL

    在 php 中 如果我想解析一个 URL 例如 www site com index php foo bar 我可以使用 POST 变量 我可以找回bar by POST foo 但如果我的网址是这样的怎么办www site com ind
  • 如何生成 rdoc 风格的可折叠代码段?

    我正在使用 Doxygen 为 C 项目创建内部文档 我让 Doxygen 包含方法的源代码等 但这使得页面难以扫描 我希望它的行为像 rdoc 一样 并将源代码隐藏在默认折叠的块中 我以为HTML DYNAMIC SECTIONS可能会让
  • 有没有办法从重载的 TS 方法中提取所有函数签名?

    基本上我只是想包装一个具有多个签名的函数 有没有什么干净的方法可以做到这一点 而无需重新硬编码所有签名 我只是想bar下面接受任何相同的参数foo declare function foo x string number declare f
  • 如何调试 AngularJS 中的“10 $digest iterations returned”错误?

    正常情况下 该消息Watchers fired in the last 5 iterations 可能包含有用的提示 但正如您所看到的 它是空的 类似问题的大多数其他答案都会告诉您寻找一种为每次调用返回一个新对象的方法 但这在大型应用程序中
  • Windbg:命令输出到文本文件

    如何将 WinDbg 中命令的输出保存到文本文件 使用 logo 选项从命令行启动 WinDbg windbg exe logo logfile txt 这将使所有完成的事情记录到指定的文件中 您可以找到命令行选项的更多详细信息here h
  • Emacs 正则表达式中字符串的开头和结尾

    表示开头和结尾的字符是什么string其中有换行符吗 我正在编写一个修剪函数 defun trim str if string match space space str match string 1 str str 但是使用像 first
  • Angular 5:如何在子组件中获取父组件路由参数?

    Here is add new folder component 该组件是以下组件的子组件folder component当我路由add new folder component from folder component那个时候我想要fo
  • 生成随机密钥 firestore

    我正在运行一个火存储数据库 我想创建一个随机密钥与 firestore 相同的模式 在链接中 我找到了创建文档后调用的函数 with db ref add 在客户端生成密钥 https github com firebase firebas
  • matplotlib 带 alpha 的圆形补丁会产生边缘和面颜色的重叠

    一般来说 我对 matplotlib 和 python 相当陌生 我想做的事情相当基本 然而 即使经过相当长的谷歌搜索时间 我也找不到解决方案 问题是这样的 我想画一个边框和脸部颜色不同的圆圈 即设置edgecolor and faceco
  • 如何使用 numpy 获取所有可能的随机组合

    我有一个长度为 NumPy 的数组N含有X那些和N X零 我想生成数组的所有可能的随机组合 例如 当N是 5 并且X是2 我需要以下组合 0 0 1 1 0 1 1 0 0 0 0 0 0 1 1 0 0 1 0 1 1 0 0 1 0 0