如何更改 pandas 直方图中使用的 bin 数量


您可以使用bins参数来更改 pandas 直方图中使用的 bin 数量:

 df. plot . hist (columns=[' my_column '], bins= 10 )

pandas 直方图中使用的默认 bin 数量为 10。

以下示例展示了如何在实践中使用bins参数。

示例:如何更改 Pandas 直方图中的 bin 数量

假设我们有以下 pandas DataFrame,其中包含有关来自不同球队的篮球运动员得分的信息:

 import pandas as pd
import numpy as np

#make this example reproducible
n.p. random . seeds (1)

#createDataFrame
df = pd. DataFrame ({' team ': np.repeat ([' A ',' B ',' C '], 100 ),
                   ' points ': np. random . normal (loc= 20 , scale= 2 , size= 300 )})

#view head of DataFrame
print ( df.head ())

  team points
0 A 23.248691
1 A 18.776487
2 A 18.943656
3 A 17.854063
4 A 21.730815

如果我们创建一个直方图来可视化变量值的分布,pandas 默认情况下会在直方图中使用 10 个 bin:

 #create histogram to visualize distribution of points
df. plot . hist (column=[' points '], edgecolor=' black ')

请注意,直方图中有 10 个条形。

但是,假设我们使用bins参数将 bin 总数更改为 20:

 #create histogram with 20 bins
df. plot . hist (column=[' points '], edgecolor=' black ', bins= 20 ) 

pandas 增加直方图中的 bin 数量

请注意,直方图中现在有 20 个条形。

我们还可以将 bin 数量减少到 5 个:

 #create histogram with 5 bins
df. plot . hist (column=[' points '], edgecolor=' black ', bins= 5 ) 

pandas 减少直方图中的 bin 数量

现在直方图中共有 5 个条形。

请随意调整bins参数的值以创建您想要的精确直方图。

但是,在选择垃圾箱数量时请记住以下几点:

  • 如果您选择的类别太少,则可能会隐藏数据的真实基础模式。
  • 如果您选择太多类别,您可能只会看到数据中的噪音。

确定直方图中使用的最佳箱数的一个有用方法是使用Sturges 规则

其他资源

以下教程解释了如何在 pandas 中执行其他常见任务:

如何从 Pandas DataFrame 创建直方图
如何从 Pandas 系列创建直方图
如何在 Pandas 中按组绘制直方图

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注