pandas读取sanfrancisco_top200数据集,列名为IncidntNum、Category、Descript、DayOfWeek、Date、Time、PdDistrict Resolution、Address、X、Y、Location、PdId,完成groupby,grouped.agg操作
时间: 2023-07-03 15:17:00 浏览: 181
好的,可以使用以下代码读取数据集:
```python
import pandas as pd
# 读取数据集
df = pd.read_csv('sanfrancisco_top200.csv')
# 查看数据集信息
print(df.head())
```
接下来,可以使用groupby方法进行分组操作,并使用agg方法对每个组进行聚合:
```python
# 使用groupby方法进行分组
grouped = df.groupby('PdDistrict')
# 对每个组进行聚合操作
result = grouped.agg({
'IncidntNum': 'count', # 案件数量
'Category': 'nunique', # 不同类别的案件数量
'Resolution': lambda x: ', '.join(x.unique()) # 解决方式,使用逗号分隔不同的方式
})
# 重命名列名
result.columns = ['Crime Counts', 'Category Counts', 'Resolutions']
# 查看聚合结果
print(result.head())
```
这段代码会将数据集按照PdDistrict列进行分组,并对每个组进行聚合操作,统计了每个区域的案件数量、不同类别的案件数量和解决方式。需要注意的是,这里使用了agg方法对不同的列进行不同的聚合操作,使用了lambda函数对解决方式进行了特殊的处理。最后,使用了rename方法将列名重命名为更加友好的名称,并输出聚合结果。
阅读全文