直方图 | np.histogram用法

用途

生成一个数组的直方图

可以快速了解数据的集中程度,分布情况等

原理

将输入的数组分割成若干个区间,然后统计每个区间中数据点的数量。

“区间”也被称为“箱子”,即“bin”

函数结构

counts, bins = np.histogram(data, bins=bin_count, range=(start, end), density=False)

输入参数:

data : 数据集,要计算直方图的数据集

bins : 箱子数量,也即横坐标上的区间数

range(可选参数) : 数字范围,默认情况下,范围是整个数据集的最小值到最大值。

density(可选参数): 为True时,返回每个区间的概率密度,得到的是归一化的直方图;为False,返回每个区间中元素的个数 

返回值:

counts :每个“bin”(箱子)中的数据点数量

bins : 包含了箱子的边界

例子

import numpy as np

data = np.array([1, 2, 1, 3, 4, 5, 6, 7, 8, 9])
counts, bins = np.histogram(data, bins=5)
print("Counts:", counts)
print("Bins:", bins)

输出如下:

Counts: [2 2 2 2 2]
Bins: [1. 2.6 4.2 5.8 7.4 9.]

PS:解释一下结果中,bins的计算过程:

由于把整个数据集分成5个“箱子”,这里面最大值是9,最小值是1,

(9-1)/5 = 1.6

因此,箱子的边界是 1.   (1 + 1*1.6)      (1 + 2*1.6)  ......以此类推,直到9.0

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值