天天看點

pandas練習題:統計某列某類資料總數及對應其他列的資料的另類方法

假設有這個表格,要求統計合同類的總數和對應的總金額。一般我們會使用正則來篩選出來,那有别的方法嗎?

我們可以使用str.contains來檢查是否含有“合同”:

       名稱    金額    年份

0    購房合同   100  2018

1    施工合同  1000  2017

2      出生   500  2016

3      聲明    90  2015

4      委托    90  2014

5  解除合同協定    75  2013

6      死亡   600  2018

import pandas as pd
from pandas import Series,DataFrame

data={'名稱':['購房合同','施工合同','出生','聲明','委托','解除合同協定','死亡'],
      '金額':[100,1000,500,90,90,75,600],
      '年份':[2018,2017,2016,2015,2014,2013,2018]}
df = DataFrame(data)
print(df)
cont =Series(df['名稱'])
sum=Series(df['金額'])
cont_sum=(cont.str.contains('合同')).sum()
sums=(sum[cont.str.contains('合同')]).sum()
print('合同類的總數是:',cont_sum)
print('合同類的總金額是:',sums)      

合同類的總數是: 3

合同類的總金額是: 1175

繼續閱讀