[英]How do I convert a PivotTable that was made into Pandas / Numpy in a DataFrame?
在python3和pandas中,我具有以下數據框:
despesas_atuais_final.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 82318 entries, 0 to 82317
Data columns (total 18 columns):
Ano 82318 non-null object
CNPJ 82318 non-null object
Deputado 82318 non-null object
Fornecedor 82318 non-null object
Matricula 82318 non-null int64
Mes 82318 non-null int64
Tipo 82318 non-null object
Valor 82318 non-null float64
cnpj_raiz_fornecedor 82318 non-null object
codigo_unico 82318 non-null object
nome_deputado 82318 non-null object
uf 82318 non-null object
nome_completo 82318 non-null object
sequencial 82318 non-null object
cpf 82318 non-null object
nome_urna 82318 non-null object
partido_eleicao 82318 non-null object
situacao 82318 non-null object
dtypes: float64(1), int64(2), object(15)
memory usage: 11.9+ MB
“ Valor”列是費用值。 “ nome_deputado”列中列出了進行支出的人員的姓名。 “ Ano”是支出的年份。 “ Mes”是支出月份,以數字表示。
我制作了一個數據透視表,以了解每個人每年的每月支出:
pd.pivot_table(despesas_atuais_final,index=["nome_deputado","Ano", "Mes"], values=["Valor"], aggfunc=np.sum)
Valor
nome_deputado Ano Mes
ABELARDO CAMARINHA 2015 3 3,345.40
4 4,843.97
5 15,738.48
6 18,245.08
7 23,953.70
8 27,587.43
9 27,058.59
10 24,117.43
11 20,984.07
2016 2 12,008.00
3 28,415.86
4 24,187.94
5 27,776.08
6 26,755.00
7 26,478.03
8 29,930.60
...
請問有一種方法可以將此數據透視表轉換為數據框嗎? 像這樣:
nome_deputado Ano Mes Valor
ABELARDO CAMARINHA 2015 3 3,345.40
ABELARDO CAMARINHA 2015 4 4,843.97
ABELARDO CAMARINHA 2015 5 15,738.48
...
您可以將對象包裝在DataFrame函數中
pd.DataFrame(pd.pivot_table(despesas_atuais_final,index=["nome_deputado","Ano", "Mes"], values=["Valor"], aggfunc=np.sum))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.