首页 > 解决方案 > 结合两列的值计数

问题描述

import pandas as pd
import seaborn as sns
dfexcel= pd.read_excel('https://raw.githubusercontent.com/ArsenioMGonzalez3/Project3_ABDS/master/Open%20Parking%20and%20Camera%20Violations_OH%20NY_2019_2020%20YTD.xlsx')
dfexcel = dfexcel[['Issuing Agency','State']].sort_values(by = 'Issuing Agency' ,  ascending=False)
dfexcel

此代码生成每个不同机构针对在纽约州或俄亥俄州注册的车辆发布的所有违规行为。

我如何查看每个机构为 NY/OH 发布的违规次数

例如:交通机构为 NY 分配 42,为 OH 分配 2

标签: pythonsortingpandas-groupbyseaborn

解决方案


您可以使用 groupby 然后获取每个组的大小:

dfexcel.groupby(['State','Issuing Agency']).size()

输出:

State  Issuing Agency
NY     CON RAIL                                  2
       DEPARTMENT OF SANITATION               2457
       DEPARTMENT OF TRANSPORTATION          22065
       FIRE DEPARTMENT                           8
       HOUSING AUTHORITY                         2
       NYC TRANSIT AUTHORITY MANAGERS            6
       NYS OFFICE OF MENTAL HEALTH POLICE        2
       OTHER/UNKNOWN AGENCIES                  239
       PARKS DEPARTMENT                         54
       POLICE DEPARTMENT                     10340
       PORT AUTHORITY                            5
       TRAFFIC                               26344
OH     DEPARTMENT OF SANITATION                  7
       DEPARTMENT OF TRANSPORTATION             47
       PARKS DEPARTMENT                          1
       POLICE DEPARTMENT                        13
       TRAFFIC                                  35

推荐阅读