本文简要介绍 python 语言中 numpy.histogram
的用法。
用法:
numpy.histogram(a, bins=10, range=None, normed=None, weights=None, density=None)
计算数据集的直方图。
- a: array_like
输入数据。直方图是在展平的数组上计算的。
- bins: int 或标量序列或 str,可选
如果 bins 是一个 int,它定义给定范围内的 equal-width bins 的数量(默认为 10)。如果 bins 是一个序列,它定义了一个单调递增的 bin 边数组,包括最右边的边,允许不均匀的 bin 宽度。
如果箱子是一个字符串,它定义了用于计算最佳 bin 宽度的方法,定义为numpy.histogram_bin_edges.
- range: (浮点数,浮点数),可选
bin 的下限和上限范围。如果没有提供,范围很简单
(a.min(), a.max())
.超出范围的值将被忽略。范围的第一个元素必须小于或等于第二个元素。范围也会影响自动 bin 计算。虽然根据内部的实际数据计算出 bin 宽度是最佳的范围, bin 计数将填充整个范围,包括不包含数据的部分。- normed: 布尔型,可选
-
这等效于密度参数,但会为不相等的 bin 宽度产生不正确的结果。它不应该被使用。
- weights: 数组,可选
一组权重,与 a 的形状相同。 a 中的每个值仅将其相关权重贡献给 bin 计数(而不是 1)。如果密度为真,则权重被归一化,因此密度在该范围内的积分保持为 1。
- density: 布尔型,可选
如果
False
,结果将包含每个 bin 中的样本数。如果True
, 结果就是概率的值密度在 bin 处的函数,归一化使得不可缺少的在范围内为 1。请注意,直方图值的总和将不等于 1,除非选择了统一宽度的 bin;这不是概率大量的函数。如果给定,则覆盖
normed
关键字。
- hist: 数组
直方图的值。有关可能语义的说明,请参见密度和权重。
- bin_edges: dtype 浮点数组
返回 bin 边
(length(hist)+1)
。
参数:
返回:
注意:
除了最后一个 (righthand-most) 箱子之外的所有箱子都是半开的。换句话说,如果 bins 是:
[1, 2, 3, 4]
那么第一个箱子是
[1, 2)
(包括1个,但不包括2个)和第二个[2, 3)
.然而,最后一个箱子是[3, 4]
, 哪一个包括 4.例子:
>>> np.histogram([1, 2, 1], bins=[0, 1, 2, 3]) (array([0, 2, 1]), array([0, 1, 2, 3])) >>> np.histogram(np.arange(4), bins=np.arange(5), density=True) (array([0.25, 0.25, 0.25, 0.25]), array([0, 1, 2, 3, 4])) >>> np.histogram([[1, 2, 1], [1, 0, 1]], bins=[0,1,2,3]) (array([1, 4, 1]), array([0, 1, 2, 3]))
>>> a = np.arange(5) >>> hist, bin_edges = np.histogram(a, density=True) >>> hist array([0.5, 0. , 0.5, 0. , 0. , 0.5, 0. , 0.5, 0. , 0.5]) >>> hist.sum() 2.4999999999999996 >>> np.sum(hist * np.diff(bin_edges)) 1.0
自动 Bin 选择方法示例,使用 2 个具有 2000 个点的峰值随机数据:
>>> import matplotlib.pyplot as plt >>> rng = np.random.RandomState(10) # deterministic random data >>> a = np.hstack((rng.normal(size=1000), ... rng.normal(loc=5, scale=2, size=1000))) >>> _ = plt.hist(a, bins='auto') # arguments are passed to np.histogram >>> plt.title("Histogram with 'auto' bins") Text(0.5, 1.0, "Histogram with 'auto' bins") >>> plt.show()
相关用法
- Python numpy histogramdd用法及代码示例
- Python numpy histogram2d用法及代码示例
- Python numpy histogram_bin_edges用法及代码示例
- Python numpy hamming用法及代码示例
- Python numpy hermite.hermfromroots用法及代码示例
- Python numpy hermite_e.hermediv用法及代码示例
- Python numpy hsplit用法及代码示例
- Python numpy hermite.hermline用法及代码示例
- Python numpy hermite.hermpow用法及代码示例
- Python numpy hermite.hermx用法及代码示例
- Python numpy hermite_e.hermefromroots用法及代码示例
- Python numpy hermite.hermmul用法及代码示例
- Python numpy hermite.herm2poly用法及代码示例
- Python numpy hermite.hermsub用法及代码示例
- Python numpy hermite_e.hermeline用法及代码示例
- Python numpy hermite_e.hermeint用法及代码示例
- Python numpy hermite_e.hermeadd用法及代码示例
- Python numpy hstack用法及代码示例
- Python numpy hermite_e.poly2herme用法及代码示例
- Python numpy hermite.hermdiv用法及代码示例
- Python numpy hermite_e.hermevander用法及代码示例
- Python numpy hermite_e.hermepow用法及代码示例
- Python numpy hermite.poly2herm用法及代码示例
- Python numpy hermite_e.hermetrim用法及代码示例
- Python numpy hermite_e.hermezero用法及代码示例
注:本文由纯净天空筛选整理自numpy.org大神的英文原创作品 numpy.histogram。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。