假设有这个表格,要求统计合同类的总数和对应的总金额。一般我们会使用正则来筛选出来,那有别的方法吗?
我们可以使用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