直方图()函数
histogram() 通过计算一系列区间的数据频率来近似数据集的累积分布。
一个bin由一个上界定义,所有小于或等于该上界的数据点都计入该bin。bin计数是累积的。
每个输入表被转换为一个单独的输出表,表示一个单一的直方图。每个输出表具有与相应输入表相同的分组键。非分组键的列将被删除。输出表包括用于上限和桶计数的附加列。
函数类型签名
(
<-tables: stream[A],
bins: [float],
?column: string,
?countColumn: string,
?normalize: bool,
?upperBoundColumn: string,
) => stream[B] where A: Record, B: Record
有关更多信息,请参见 Function type signatures。
参数
列
包含输入值的列。列必须是浮点型。 默认值为 _value。
上界列
用于存储区间上限的列。默认值是 le。
计数列
存储桶计数的列。默认为 _value。
箱子
(必填) 用于计算直方图频率的上限列表。
分箱应该包含一个边界为数据集最大值的箱子。如果不知道最大值,可以将此值设置为正无穷大。
二进制助手函数
以下辅助函数可用于生成区间。
- 线性区间()
- 对数箱()
标准化
将计数转换为介于 0 和 1 之间的频率值。默认值是 false。
注意: 归一化的直方图不能通过将其计数相加来聚合。
表格
输入数据。默认是管道转发数据 (<-).
示例
创建累积直方图
import "sampledata"
sampledata.float()
|> histogram(bins: [0.0, 5.0, 10.0, 20.0])
创建一个具有动态生成区间的累积分布直方图
import "sampledata"
sampledata.float()
|> histogram(bins: linearBins(start: 0.0, width: 4.0, count: 3))