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

关于numpy.histogram设置density=True时hist维度的技术疑问

关于numpy.histogram中density=True时hist的维度问题

我来帮你拆解这个问题:

通用规则

首先要明确:density=True参数只会改变返回的hist数组中元素的含义(将频率转换为概率密度,即每个区间的频率除以区间宽度),但不会影响hist的维度/长度。

np.histogram()返回的hist的维度完全由bins参数决定:

  • 如果bins是一个整数n,那么函数会生成n个等宽的区间,返回的hist是一个长度为n的1维numpy数组(维度表示为(n,))。
  • 如果bins是一个自定义的区间数组(比如[0, 0.5, 1.0, 1.5]),那么hist的长度等于len(bins) - 1,同样是1维数组。

针对你的具体例子

你给出的数组A执行代码np.histogram(A, bins=9, density=True)时:

  • 这里bins=9是整数,意味着会创建9个等宽的区间来统计数组A的元素分布。
  • 所以返回的hist是一个长度为9的1维numpy数组,它的维度是(9,)。

你可以自己跑这段代码验证:

import numpy as np

A = np.array([ 0.0019879 , -0.00172861, -0.00527226, 0.00639585, -0.00242005, 
               -0.00717373, 0.00371651, 0.00164218, 0.00034572, -0.00864304, 
               -0.00639585, 0.006828 , 0.00354365, 0.00043215, -0.00440795, 
               0.00544512, 0.00319793, 0.00164218, 0.00025929, -0.00155575, 
               0.00129646, 0.00259291, -0.0039758 , 0.00328436, 0.00207433, 
               0.0011236 , 0.00440795, 0.00164218, -0.00319793, 0.00233362, 
               0.00025929, 0.00017286, 0.0008643 , 0.00363008])
hist, bins = np.histogram(A, bins=9, density=True)
print(hist.shape)  # 输出 (9,)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:00:53