numpy.histogramdd
numpy.histogramdd(sample, bins=10, range=None, normed=None, weights=None, density=None) [source]
计算某些数据的多维直方图。
参数 : | sample :(N, D) array, 或 (D, N) array_like 要直方图的数据。 注意当array_like时样本的不寻常解释: 1) 如果是数组,则每一行都是D维空间中的坐标, 例如, 2) 如果为array_like, 则每个元素都是单个坐标的值列表。 例如, bins :sequence 或 int, 可选 bin规格: 1) 描述沿每个维度单调递增的bin边缘的数组序列。 2) 每个维度的bins数量(nx,ny,…=bins)。 3) 所有维度的bins数(nx = ny =…=bins)。 range :sequence, 可选 长度为D的序列,每个序列是一个可选的(lower, upper)元组, 如果未在bin中明确给出边缘,则给出要使用的外部bin边缘。 在序列中输入None,将导致最小值和最大值用于相应的尺寸。 默认值None等效于传递D None值的元组。 density :bool, 可选 如果默认值为False,则返回每个bin中的样本数。 如果为True, 则在bin处返回概率密度函数 normed :bool, 可选 密度参数的别名,其行为相同。 为了避免与 weights :(N,) array_like, 可选 权重每个样本(x_i,y_i,z_i,...)的值w_i的数组。 如果标准为True,则将权重标准化为1。 如果normed为False, 则返回的直方图的值等于属于每个bin的样本的权重之和。 |
返回值 : | H :ndarray 样本x的多维直方图。有关不同的可能语义,请参见normed和weights。 edges :list D数组的列表,描述每个维度的面元边缘。 |
例子
>>> r = np.random.randn(100,3)
>>> H, edges = np.histogramdd(r, bins = (5, 8, 4))
>>> H.shape, edges[0].size, edges[1].size, edges[2].size
((5, 8, 4), 6, 9, 5)