duration分箱展示
时间: 2024-05-03 13:16:54 浏览: 7
将一个连续的数值型变量分成若干个区间,每个区间称作一个箱子,然后统计每个箱子内数据的频数或者占比,这就是分箱展示。
在Python中,可以使用pandas库和numpy库来完成分箱展示。下面是一个简单的例子:
```python
import pandas as pd
# 创建一个数据集
data = pd.DataFrame({'duration': [1, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50]})
# 将duration分成3个区间
data['duration_bin'] = pd.cut(data['duration'], bins=3)
# 计算每个区间的频数和占比
bin_counts = data['duration_bin'].value_counts()
bin_proportions = bin_counts / len(data)
# 输出结果
print('区间频数:\n', bin_counts)
print('区间占比:\n', bin_proportions)
```
输出结果:
```
区间频数:
(0.954, 17.0] 6
(17.0, 33.0] 4
(33.0, 50.0] 1
Name: duration_bin, dtype: int64
区间占比:
(0.954, 17.0] 0.545455
(17.0, 33.0] 0.363636
(33.0, 50.0] 0.090909
Name: duration_bin, dtype: float64
```
可以看到,我们将`duration`分成了3个区间,分别是`(0.954, 17.0]`、`(17.0, 33.0]`和`(33.0, 50.0]`,其中`(0.954, 17.0]`这个区间的频数为6,占比为54.55%。