dataframe 一列数据自定义多个范围利润0-1,1-5,5-20统计总数 并生成一个dataframe
时间: 2024-01-21 18:15:52 浏览: 70
假设我们有一个名为 `df` 的 DataFrame,其中包含了一个名为 `profit` 的列,其值为利润。我们可以按照如下步骤完成要求:
1. 定义利润的范围,并使用 `pd.cut()` 方法将 `profit` 列的值分到不同的范围中。
```python
bins = [0, 1, 5, 20]
labels = ['0-1', '1-5', '5-20']
df['profit_range'] = pd.cut(df['profit'], bins=bins, labels=labels)
```
2. 使用 `groupby()` 方法将 `profit_range` 分组,然后使用 `size()` 方法统计每个分组中的数量。
```python
grouped = df.groupby('profit_range').size().reset_index(name='count')
```
3. 将结果转换为新的 DataFrame,并将 `profit_range` 和 `count` 两列重命名为 `range` 和 `total_count`。
```python
result_df = pd.DataFrame(grouped)
result_df = result_df.rename(columns={'profit_range': 'range', 'count': 'total_count'})
```
最终的结果将保存在 `result_df` 变量中。
阅读全文