当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python dask.array.histogram用法及代码示例


用法:

dask.array.histogram(a, bins=None, range=None, normed=False, weights=None, density=None)

numpy.histogram() 的受阻变体。

参数

adask.array.Array

输入数据;直方图是在展平的数组上计算的。如果使用 weights 参数,则访问 a 的块以检查 aweights 之间的块兼容性。如果 weightsNone ,则可以将 dask.dataframe.Series 对象作为输入数据传递。

binsint 或标量序列,可选

需要指定 binsbins 的数量和 range 参数的可迭代,因为在阻塞数组上计算 minmax 是一项昂贵的操作,必须显式执行。如果bins 是一个int,它定义给定范围内的equal-width bin 的数量(默认为10)。如果bins 是一个序列,它定义了一个单调递增的 bin 边数组,包括最右边的边,允许不均匀的 bin 宽度。

range(浮点数,浮点数),可选

bin 的下限和上限范围。如果未提供,范围只是 (a.min(), a.max()) 。超出范围的值将被忽略。范围的第一个元素必须小于或等于第二个元素。 range 也会影响自动 bin 计算。虽然根据 range 中的实际数据计算出 bin 宽度是最佳的,但 bin 计数将填充整个范围,包括不包含数据的部分。

normed布尔型,可选

这等效于 density 参数,但会为不相等的 bin 宽度产生不正确的结果。它不应该被使用。

weightsdask.array.Array,可选

权重的 dask.array.Array,与 a 具有相同的块结构。 a 中的每个值仅将其关联的权重贡献给 bin 计数(而不是 1)。如果 density 为 True,则权重被归一化,因此该范围内的密度积分保持为 1。

density布尔型,可选

如果False,结果将包含每个 bin 中的样本数。如果True, 结果就是概率的值密度在 bin 处的函数,归一化使得不可缺少的在范围内为 1。请注意,直方图值的总和将不等于 1,除非选择了统一宽度的 bin;这不是概率大量的函数。覆盖normed如果给定关键字。如果density是真的,bins不能是 single-number 延迟值。它必须是一个具体的数字,或 bin 边的 (possibly-delayed) 数组/序列。

返回

hist暗阵列

直方图的值。有关可能语义的说明,请参见densityweights

bin_edgesdtype 浮点数的 dask 数组

返回 bin 边 (length(hist)+1)

例子

使用箱数和范围:

>>> import dask.array as da
>>> import numpy as np
>>> x = da.from_array(np.arange(10000), chunks=10)
>>> h, bins = da.histogram(x, bins=10, range=[0, 10000])
>>> bins
array([    0.,  1000.,  2000.,  3000.,  4000.,  5000.,  6000.,  7000.,
        8000.,  9000., 10000.])
>>> h.compute()
array([1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000])

明确指定箱子:

>>> h, bins = da.histogram(x, bins=np.array([0, 5000, 10000]))
>>> bins
array([    0,  5000, 10000])
>>> h.compute()
array([5000, 5000])

相关用法


注:本文由纯净天空筛选整理自dask.org大神的英文原创作品 dask.array.histogram。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。