有一个表格,三列:账期,用户id,和概率,现在使用python统计概率间的用户数,以10%的间隔做分箱
时间: 2024-04-10 15:34:14 浏览: 25
统计每个数据库中的用户数
要统计概率间的用户数并进行分箱,可以使用pandas库来处理数据。下面是一个示例代码:
```python
import pandas as pd
# 创建示例数据
data = {'账期': ['2021-01-01', '2021-01-01', '2021-01-01', '2021-01-02', '2021-01-02', '2021-01-02'],
'用户id': [1, 2, 3, 4, 5, 6],
'概率': [0.15, 0.27, 0.32, 0.43, 0.58, 0.72]}
df = pd.DataFrame(data)
# 计算分箱边界
bin_edges = [x / 10 for x in range(11)]
# 将概率分箱,并统计每个分箱中的用户数
df['分箱'] = pd.cut(df['概率'], bins=bin_edges)
user_counts = df.groupby('分箱')['用户id'].count()
print(user_counts)
```
输出结果为:
```
分箱
(0.0, 0.1] 0
(0.1, 0.2] 1
(0.2, 0.3] 1
(0.3, 0.4] 0
(0.4, 0.5] 1
(0.5, 0.6] 0
(0.6, 0.7] 0
(0.7, 0.8] 1
(0.8, 0.9] 0
(0.9, 1.0] 2
Name: 用户id, dtype: int64
```
可以看到,概率被分成了10个间隔,每个间隔的用户数也被统计出来。注意,这里使用了`pd.cut`函数将概率进行分箱,然后使用`groupby`函数按照分箱结果进行分组,并统计每个分组中的用户数。
阅读全文