You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何对NumPy数组执行向上取整除法操作?

NumPy数组元素除以2后向上取整的实现

方法1:使用np.ceil结合浮点除法

利用NumPy的ceil函数对浮点除法结果取整,再转换为整数类型:

import numpy as np

a = np.array([1, 2, 3, 4])
result = np.ceil(a / 2).astype(int)
print(result)  # 输出: array([1, 1, 2, 2])

方法2:整数运算(高效无浮点开销)

对于正整数数组,向上取整除以2可以通过整数运算直接实现,避免浮点转换的性能损耗:

import numpy as np

a = np.array([1, 2, 3, 4])
result = (a + 1) // 2
print(result)  # 输出: array([1, 1, 2, 2])

通用封装函数

如果需要支持任意正整数除数,可以封装成通用函数:

import numpy as np

def ceil_divide(arr, divisor):
    return (arr + divisor - 1) // divisor

# 调用示例
a = np.array([1, 2, 3, 4])
print(ceil_divide(a, 2))  # 输出: array([1, 1, 2, 2])

内容的提问来源于stack exchange,提问作者Bruno Xavier

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 08:27:02