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

对数值列表均值进行Bootstrap抽样的最高效实现方法是什么

你可以直接使用Numpy原生向量化操作实现需求,完全不需要依赖高版本Scipy,性能和可读性都远高于你现在的写法:

优化后实现代码

import numpy as np

def bootstrap_mean(data, n_bootstrap=100):
    sample_count = len(data)
    # 直接生成指定形状的有放回抽样索引
    boot_indexes = np.random.randint(0, sample_count, size=(n_bootstrap, sample_count))
    # 向量化索引取值后逐行求均值
    return data[boot_indexes].mean(axis=1)

# 测试示例
data = np.linspace(0, 4, 5)
output = bootstrap_mean(data, n_bootstrap=100)

优势说明

  • 完全规避了原写法中Python层面的列表推导循环,所有运算都在Numpy层面完成,数据量越大性能提升越明显
  • 代码逻辑清晰简洁,符合Pythonic的编码规范
  • 仅依赖Numpy,不需要升级Scipy版本

如果需要进一步提升性能,且环境允许安装第三方包,可以给函数添加numba.njit装饰器,对于超大规模数据的重采样运算速度会有额外提升。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 19:48:03