python - 如何使用由几列组成的唯一键进行计数?
问题描述
在 python3 和 pandas 我有这个数据框:
autores_naodeputados.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 0 entries
Data columns (total 19 columns):
IdAutor 0 non-null object
IdDocumento 0 non-null object
NomeAutor 0 non-null object
codigo_unico 0 non-null object
nome_deputado 0 non-null object
uf 0 non-null object
nome_completo 0 non-null object
sequencial 0 non-null object
cpf 0 non-null object
nome_urna 0 non-null object
partido_eleicao 0 non-null object
situacao 0 non-null object
AnoLegislativo 0 non-null object
CodOriginalidade 0 non-null object
DtEntradaSistema 0 non-null datetime64[ns]
DtPublicacao 0 non-null datetime64[ns]
Ementa 0 non-null object
IdNatureza 0 non-null object
NroLegislativo 0 non-null object
dtypes: datetime64[ns](2), object(17)
memory usage: 0.0+ bytes
它是一个关于立法项目作者身份的数据库。“NomeAutor”列是政治家的名字。
“NroLegislativo”列是项目在当年收到的序号。
“CodOriginalidade”列有其他给定的顺序代码,而不是所有项目类型。
“IdNatureza”列是指示流程类型(法律、修正案等)的代码。
“AnoLegislativo”栏是项目提交的年份。
随着这四个领域的联合(NroLegislativo、CodOriginalidade、IdNatureza、AnoLegislativo),我有一个独特的密钥来区分每个政治名称中的项目。
有没有办法计算每个政客有多少个独特的钥匙?所以,要知道每个人有多少项目。
-/-
行示例如下所示:
autores_projetos[['NomeAutor', 'NroLegislativo', 'CodOriginalidade', 'IdNatureza', 'AnoLegislativo']].head(5).to_dict()
{'NomeAutor': {0: 'Vaz de Lima',
1: 'Edmir Chedid',
2: 'Roberto Engler',
3: 'Campos Machado',
4: 'Célia Leão'},
'NroLegislativo': {0: '9', 1: '9', 2: '9', 3: '9', 4: '9'},
'CodOriginalidade': {0: nan, 1: nan, 2: nan, 3: nan, 4: nan},
'IdNatureza': {0: '5', 1: '5', 2: '5', 3: '5', 4: '5'},
'AnoLegislativo': {0: '2015', 1: '2015', 2: '2015', 3: '2015', 4: '2015'}}
我需要知道类似的东西:
NomeAutor
Gil Lancaster 386
Itamar Borges 200
Campos Machado 189
Carlos Giannazi 189
Cezinha de Madureira 165
Afonso Lobato 152
Mauro Bragato 149
...
来源是一个groupby:
autores_deputados.groupby("NomeAutor").NroLegislativo.count().sort_values(ascending=False)
但正如我上面所说,在我的情况下,唯一键由许多字段组成
解决方案
推荐阅读
- python - 尝试在不使用 Replace/Mapç 的情况下使用字符串附加列表元素
- python - Python 'Logger' 模块双重记录
- python-3.x - Improve speed of wikipedia.search with Python
- go - Add struct or pointer to struct to slice
- javascript - 方法未定义为函数(定义为一个)
- apache - Apache configuration for slim3 with ssl
- c++ - How to use a (while) loop and where to place it if eligible for all code
- python - Sending a mass-email with Python using data from several .txt files
- php - Nginx 404 Not Found when access module on yii2
- swift - Problem connecting outlets when UICollectionViewCell is in a xib