问题描述
我有2个数据框,它们具有相同的列数和相同的列标签和数据类型。 列为:COUNTY,POLICEY TYPE,PERIL,2017_1、2017_2,...,2020_2。 df4在每个年/季度列(即2017_1,2017_2 ...)下具有每个县,政策类型和风险类型的CLAIMS总数,因此,例如说Alachua县有10个政策类型的索赔:CNR和Peril类型:AOP,用于2017_1。 df5的布局相同,不同之处在于它具有美元赔偿,而不是每年/季度列中的索偿数。
我的目标是比较df1和df2的COUNTY,POLICY TYPE和PERIL列,如果它们都匹配,我想将df5的值除以df4,因此从本质上讲,每项索赔的平均赔偿金额为在这段时间内指定的县和政策类型以及危险类型。
我想用该计算结果填充一个新的数据框。我将新数据框命名为“ dfy”。
这是我尝试尝试的代码片段:
dfy = df4[["COUNTY","POLICY TYPE","PERIL"]]
conditions = [((df4["COUNTY"]==dfy["COUNTY"]) & (df5["COUNTY"]==dfy["COUNTY"])),((df4["POLICY TYPE"]==dfy["POLICY TYPE"]) & (df5["POLICY TYPE"]==dfy["POLICY TYPE"])),((df4["PERIL"]==dfy["PERIL"]) & (df5["PERIL"]==dfy["PERIL"]))]
dfy["2017_1"] = np.where(conditions,df5["2017_1"]/(np.where(df4["2017_1"]!=0,df4["2017_1"],df5["2017_1"])),False)
任何帮助将不胜感激。谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)