将整数拆分为 bin

2023-11-25

给定一个整数和 bin 的数量,如何将整数分成尽可能相等的部分?

例如。输出的总和应等于输入整数

[in]: x = 20 , num_bins = 3
[out]: (7, 7, 6)

另一个例如

[in]: x = 20 , num_bins = 6
[out]: (4, 4, 3, 3, 3, 3)

我试过这个:

x = 20
num_bins = 3
y = [int(x/num_bins)] * num_bins
for i in range(x%num_bins):
    y[i] += 1

它有效,但必须有一个更简单/更好的方法,也许使用bisect or numpy?

Using numpy from https://stackoverflow.com/a/48899071/610569,我也可以这样做:

list(map(len, np.array_split(range(x), num_bins)))

但这与创建一个生成来获取假装列表并获取长度有点复杂。


内置的divmod函数对此可能有用。

def near_split(x, num_bins):
    quotient, remainder = divmod(x, num_bins)
    return [quotient + 1] * remainder + [quotient] * (num_bins - remainder)

Demo

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

将整数拆分为 bin 的相关文章

  • boto3 资源(例如 DynamoDB.Table)的类型注释

    The boto3库提供了几种返回资源的工厂方法 例如 dynamo boto3 resource dynamodb Table os environ DYNAMODB TABLE 我想注释这些资源 以便我可以获得更好的类型检查和完成 但我
  • Python在postgresql表中查找带有单引号符号的字符串

    我需要从 psql 表中查找包含多个单引号的字符串 我当前的解决方案是将单引号替换为双单引号 如下所示 sql query f SELECT exists SELECT 1 FROM table name WHERE my column m
  • Jupyter Notebooks 不显示进度条

    我正在尝试在 Jupyter 笔记本中显示进度条 这是一台新电脑 我通常做的事情似乎不起作用 from tqdm import tqdm notebook example iter 1 2 3 4 5 for rec in tqdm not
  • 如何使用显式引用转储 YAML?

    递归引用非常适合ruamel yaml or pyyaml ruamel yaml dump ruamel yaml load A A id001 id001 然而 它 显然 不适用于普通引用 ruamel yaml dump ruamel
  • 如何在 PyCharm 4.5.2 中使用 PyPy 作为标准/默认解释器?

    如何在 PyCharm 4 5 2 中使用 PyPy 作为标准 默认解释器 一切都在 Ubunutu 14 10 下运行 并且 pypy 已经安装 您可以在项目的设置下进行配置 这个官方文档直接涵盖了 https www jetbrains
  • 在 SELECT 中将列值拆分为两列?

    我在 varchar 列中有一个字符串值 它是一个由两部分组成的字符串 在它到达数据库之前分割它不是一个选择 该列的值如下所示 one column part1 part2 part1 part2 所以我想要的是一个如下所示的结果集 col
  • 如何在 Python 3 中循环遍历集合,同时从集合中删除项目

    这是我的情况 我有一个list set 哪个并不重要 movieplayer我想调用的对象 preload 功能开启 该预加载函数可以立即返回 但希望将来返回一点 我想存储这个电影播放器 集合 表明它们尚未预加载 然后循环它们 调用prel
  • 如何将 self 传递给装饰器?

    我该如何通过self key下面进入装饰器 class CacheMix object def init self args kwargs super CacheMix self init args kwargs key func Cons
  • python 中的 Johansen 协整检验

    我找不到任何有关在处理统计和时间序列分析 pandas 和 statsmodel 的 Python 模块中执行 Johansen 协整检验的功能的参考 有谁知道是否有一些代码可以执行时间序列之间的协整测试 现在 这已在 Python 的 s
  • PySide6.1 与 matplotlib 3.4 不兼容

    当我只安装PySide6时 GUI程序运行良好 但是一旦我安装了matplotlib及其依赖包 包括pyqt5 则GUI程序将无法运行并输出以下错误消息 This application failed to start because no
  • `list()` 被认为是一个函数吗?

    list显然是内置类型 https docs python org 3 library stdtypes html list在Python中 我看到底下有一条评论this https stackoverflow com a 53645813
  • 在Python中计算内存碎片

    我有一个长时间运行的进程 不断分配和释放对象 尽管正在释放对象 但 RSS 内存使用量会随着时间的推移而增加 如何计算发生了多少碎片 一种可能性是计算 RSS sum of allocations 并将其作为指标 即便如此 我该如何计算分母
  • 乘以行并按单元格值附加到数据框

    考虑以下数据框 df pd DataFrame X a b c d Y a b d e Z a b c d 1 2 1 3 df 我想在 列中附加数字大于 1 的行 并在该行中的数字减 1 df 最好应该 然后看起来像这样 或者它可能看起来
  • Python 惰性迭代器

    我试图了解迭代器表达式如何以及何时被求值 以下似乎是一个懒惰的表达 g i for i in range 1000 if i 3 i 2 然而 这个在构造上失败了 g line strip for line in open xxx r if
  • Python 声音(“铃声”)

    我想让一个 python 程序在完成任务时通过发出嘟嘟声来提醒我 目前 我使用import os然后使用命令行语音程序说 进程完成 我更愿意它是一个简单的 铃 我知道有一个函数可以用于Cocoa apps NSBeep 但我认为这与此没有太
  • 获取所有ios应用程序的全局列表[重复]

    这个问题在这里已经有答案了 我想对苹果应用商店进行一些全球统计 一个瓶颈是至少获取所有当前活动应用程序的 ID 这 9 位数字 有谁知道如何获取 iOS 应用商店中当前活动应用程序的所有 id 的完整列表 更好的是特定类别的所有 ID 例如
  • 是否可以将 pd.Series 分配给无序 pd.DataFrame 中的列而不映射到索引(即不重新排序值)?

    在 Pandas 中创建或分配新列时 我发现了一些意外的行为 当我对 pd DataFrame 进行过滤或排序 从而混合索引 然后从 pd Series 创建新列时 Pandas 会重新排序该系列以映射到 DataFrame 索引 例如 d
  • 检测 IDLE 的存在/如何判断 __file__ 是否未设置

    我有一个脚本需要使用 file 所以我了解到 IDLE 没有设置这个 有没有办法从我的脚本中检测到 IDLE 的存在 if file not in globals file is not set 如果你想做一些特别的事情 file 未设置
  • 如何在单元测试中使用 JSON 发送请求

    我的 Flask 应用程序中有在请求中使用 JSON 的代码 我可以像这样获取 JSON 对象 Request request get json 这一直工作得很好 但是我正在尝试使用 Python 的 unittest 模块创建单元测试 但
  • 如何为所有用户安装 Anaconda python?

    Anaconda python 发行版 https store continuum io cshop anaconda 非常方便地部署科学计算环境 SCE 并根据需要切换python版本 默认情况下 安装会将 python 定位到 anac

随机推荐

  • 如何在 C++ 中重复字符串多次?

    我想在 C 中的字符串开头插入 n 个空格 或任何字符串 有没有直接的方法可以使用 std strings 或 char 字符串来执行此操作 例如 在 Python 中你可以简单地做 gt gt gt 5 lolcat lolcat 在重复
  • 如何获取进程ID来杀死nohup进程? [关闭]

    Closed 这个问题是与编程或软件开发无关 目前不接受答案 我正在服务器上运行 nohup 进程 当我尝试杀死它时 我的腻子控制台会关闭 这是我尝试查找进程 ID 的方法 ps ef grep nohup 这是杀死命令 kill 9 17
  • 如何保持对话框中的沉浸模式?

    当我的活动显示自定义对话框时 如何维护新的沉浸模式 我使用下面的代码来维护对话框中的沉浸模式 但是使用该解决方案 当我启动自定义对话框时 导航栏会出现不到一秒钟 然后就会消失 以下视频更好地解释了该问题 当导航栏出现时 请查看屏幕底部 ht
  • Flutter:Streambuilder 导致 Firestore 上的读取次数过多

    我正在尝试构建一个简单的报价 Flutter 应用程序 在其中显示报价列 表并允许用户 喜欢 报价 我正在为此使用 Streambuilder 我的问题是 Firestore 使用仪表板显示的读取次数非常多 每个用户几乎 300 次 即使我
  • 服务帐号需要哪些预定义 IAM 角色才能完成 Google Cloud Run 快速入门:构建和部署?

    我想将 Google Cloud Run 与 Google App Engine 和 Google Cloud Functions 进行比较 云跑快速入门 构建和部署似乎是一个很好的起点 我的应用程序默认凭据太宽泛 无法在开发过程中使用 我
  • 如何在离散BarChart nvd3.js上设置y轴上的域和比例

    我在我的一个应用程序中使用 d3 js 图表 他们在这张图片中 看Charts 对于货币图表上的 Y 轴 参见图片 我希望最大值四舍五入为 400 无论这里的最大条形大小是多少 它都是 358 72 美元 但我想将条形保持在 358 72
  • 在RecyclerView中显示SQLite数据

    我搜索了很多 但没有找到任何有关如何在 RecyclerView 中显示 SQLite 数据的分步指南 谁能向我解释我该怎么做 My 数据库适配器 public class DataBaseAdapter DataBaseHelper he
  • SQL CE 最大长度

    我需要在 WP7 应用程序中存储文章 我只想使用数据库 这样我就可以通过未读的文章等进行查询 我在 Mango 中遇到了 SQL CE 的一个大问题 似乎有 4000 个字符的限制 而我的文章是 4200 个 而这还不是最大的问题 如果有的
  • T-SQL 中“\”和“$”的用法是什么?

    正如我发现的 在 SQL Server 书籍中 Backslash Transact SQL 将长字符串常量分成两行或更多行以提高可读性 and SELECT Clause Transact SQL IDENTITY ROWGUID And
  • 将元数据存储在 CSV 文件中

    我知道这是对 CSV 格式的滥用 我确实明白更合适的解决方案是导出xls xlsx文件 或为用户提供 OData 端点并让他们使用 power hub 检索数据 此时我想坚持使用 CSV 因为它更容易实现 我需要将平面行列表 报告 导出为
  • 如何最好地在 C# 中实现可公开访问的常量

    在 C 中实现可公开访问的常量似乎有三种选择 我很好奇是否有任何充分的理由选择其中之一 或者这只是个人喜好问题 Choice 1 私有字段加上属性获取器 private const string someConstant string th
  • 如何将表单添加到控制台应用程序以便用户可以选择文件?

    我创建了一个控制台应用程序并让它按照我想要的方式工作 使用VS2010中的 添加项目 gt 添加Windows窗体 选项 它已经自动创建了我需要的内容 我添加了一个按钮和代码来检索 Excel 文件 如下 我的问题是 我如何获取他们创建的文
  • 在 Open ES iPhone 应用程序中使用 VAO 围绕 VBO 会导致调用 glDrawElements 时 EXC_BAD_ACCESS

    我正在尝试将我的代码提升到一个新的水平 遵循 Apple 的一些最佳实践 我尝试围绕我的顶点缓冲区对象 VBO 实现顶点数组对象 我像这样设置我的 VBO 和 VAO void setupVBOs glBindBuffer GL ARRAY
  • 如何使用Python在屏幕上绘制一个空矩形

    我不是专家 我试图在屏幕上显示一个矩形 该矩形从固定起点开始跟随鼠标移动 就像您在文字或绘画中选择某些内容一样 我带着这个代码 import win32gui m win32gui GetCursorPos while True n win
  • 如何将 ATL/MFC CString 转换为 QString?

    鉴于项目的编码可能是 Unicode 但不确定 将 ATL CString 转换为 QString 的最佳方法是什么 我想到的是这样的 CString c T SOME TEXT std basic string
  • 将 Guice 组件集成到 Spring 应用程序中

    我们有一个基于 Spring 框架的应用程序 需要集成使用 Google Guice 构建的组件 有人能给我们一些关于如何做到这一点的建议吗 我们遇到了以下链接 展示了如何将 Spring 集成到 Guice 中 但我们需要相反的方式 ht
  • 匹配文件对象中的多行正则表达式

    如何从文件对象 data txt 中提取此正则表达式中的组 import numpy as np import re import os ifile open data txt r Regex pattern pattern re comp
  • 一个xib,几个子类

    我有一个用于自定义 UIView 子类的 xib 文件 工作正常 我能够加载正确的 nib 并创建我的类的实例 它包含我添加到 xib 文件中的所有子视图 但是 我也对该视图进行了子类化 但我不知道如何创建此类的实例并让它使用父类使用的 x
  • 如何从apireact.js下载excel响应

    我的 api 的响应类似于此演示 URL https mytutari com webservices contract exportcallnote 10377431 如果我单击 url 它会自动下载 但是当我尝试在 axios 响应中使
  • 将整数拆分为 bin

    给定一个整数和 bin 的数量 如何将整数分成尽可能相等的部分 例如 输出的总和应等于输入整数 in x 20 num bins 3 out 7 7 6 另一个例如 in x 20 num bins 6 out 4 4 3 3 3 3 我试