直方图是将数据集分成称为M的小equal-sized个间隔,是可视化数据集频率分布的最佳方法。 Numpy直方图函数类似于hist()
matplotlib库的函数,唯一的区别是Numpy直方图给出了数据集的数值表示,而hist()
给出数据集的图形表示。
创建数字直方图
Numpy有内置numpy.histogram()
函数以图形形式表示数据分发的频率。具有相等水平尺寸的矩形对应于称为区间的类间隔,并且对应于频率的可变高度。
用法:
numpy.histogram(data, bins=10, range=None, normed=None, weights=None, density=None)
上述函数的属性如下:
属性 | 参数 |
---|---|
data | 要绘制的数组或数组的序列 |
bins | int或str序列定义一个范围内的等宽框数,默认值为10 |
range | 可选参数设置箱子的上下限 |
normed | 与density属性相同的可选参数,对于不等的箱宽给出错误的结果 |
weights | 可选参数定义与数据具有相同维度的权重数组 |
density | 可选参数,如果结果为假,则每个仓中包含样本数;如果结果为真,则仓中包含概率密度函数 |
该函数具有两个返回值hist,该值提供直方图的值的数组,而edge_bin是浮点数据类型的数组,其中包含长度比hist长一的bin边。
例:
# Import libraries
import numpy as np
# Creating dataset
a = np.random.randint(100, size =(50))
# Creating histogram
np.histogram(a, bins = [0, 10, 20, 30, 40,
50, 60, 70, 80, 90,
100])
hist, bins = np.histogram(a, bins = [0, 10,
20, 30,
40, 50,
60, 70,
80, 90,
100])
# printing histogram
print()
print (hist)
print (bins)
print()
输出:
图示
上面的直方图数字表示形式可以转换为图形形式。plt()
函数存在于pyplot
Matplotlib的子模块将数据集数组和bin数组作为参数,并创建相应数据值的直方图。
例:
# import libraries
from matplotlib import pyplot as plt
import numpy as np
# Creating dataset
a = np.random.randint(100, size =(50))
# Creating plot
fig = plt.figure(figsize =(10, 7))
plt.hist(a, bins = [0, 10, 20, 30,
40, 50, 60, 70,
80, 90, 100])
plt.title("Numpy Histogram")
# show plot
plt.show()
输出:
相关用法
- Python next()用法及代码示例
- Python set()用法及代码示例
- Python os.dup()用法及代码示例
- Python PIL composite()用法及代码示例
- Python PyTorch abs()用法及代码示例
- Python Pandas.cut()用法及代码示例
- Python PIL blend()用法及代码示例
- Python os.getenv()用法及代码示例
- Python sympy.Pow()用法及代码示例
- Python sympy.tan()用法及代码示例
- Python turtle.pos()用法及代码示例
- Python os.getpid()用法及代码示例
- Python os.waitid()用法及代码示例
- Python os.WIFEXITED()用法及代码示例
- Python sympy.nP()用法及代码示例
- Python sympy.ones()用法及代码示例
- Python PIL BoxBlur()用法及代码示例
- Python os.getcwdb()用法及代码示例
注:本文由纯净天空筛选整理自jeeteshgavande30大神的英文原创作品 NumPy.histogram() Method in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。