pandas先分组再统计要素个数
时间: 2023-06-13 21:02:55 浏览: 112
可以使用`groupby()`方法对数据进行分组,然后使用`size()`方法统计每个分组中的元素个数。例如:
``` python
import pandas as pd
# 创建示例数据
data = {'Animal': ['Dog', 'Cat', 'Dog', 'Cat', 'Dog', 'Dog', 'Cat'],
'Color': ['Black', 'White', 'White', 'Black', 'White', 'Black', 'Black']}
df = pd.DataFrame(data)
# 按 Animal 列进行分组,统计每个分组中的元素个数
result = df.groupby('Animal').size()
print(result)
```
输出结果为:
```
Animal
Cat 3
Dog 4
dtype: int64
```
其中,`result`是一个Series对象,包含两个分组('Cat'和'Dog')及它们对应的元素个数。
相关问题
pandas先分组再统计不同的要素个数
你可以使用`groupby`函数将数据按照某一列分组,然后使用`nunique`函数统计分组后每组中不同要素的个数。
例如,假设有一个数据集`df`,其中有两列`category`和`item`,你想要按照`category`列进行分组,统计每组中不同的`item`个数,可以使用以下代码:
```python
grouped = df.groupby('category')
result = grouped['item'].nunique()
```
这将返回一个`Series`对象,其中每个索引表示一个分组,对应的值为该分组中不同`item`的个数。
pandas如何分组再统计某列元素个数
要对某列进行分组并统计元素个数,可以使用 Pandas 库中的 `groupby()` 方法结合 `size()` 方法。以下是一个示例:
假设有一个 DataFrame 名为 `df`,其中有两列,分别为 `group_column` 和 `count_column`,我们想要对 `group_column` 进行分组,并统计每个组中 `count_column` 列的元素个数,可以使用以下代码:
```python
df.groupby('group_column')['count_column'].size()
```
上述代码将按照 `group_column` 列的不同值进行分组,并统计每个组中 `count_column` 列的元素个数。
如果你还想要将结果保存到一个新的 DataFrame 中,可以使用 `reset_index()` 方法,例如:
```python
new_df = df.groupby('group_column')['count_column'].size().reset_index(name='count')
```
这将创建一个新的 DataFrame,其中包含两列,一列为分组列中的唯一值,另一列为每个组中 `count_column` 列的元素个数。你可以将 `name` 参数设置为你想要的列名。
阅读全文