アクチュアリーのためのPython入門(決算数理編第5回)
入金データの危険保険料と予定事業費の計算
📚 アクチュアリーのためのPython入門
この記事は決算数理編の一部です。
▶ 目次はこちら
▶ 逆引きガイドはこちら
はじめに
前回は、異動契約のサンプルデータを使って、
異動に伴う保険料積立金を計算しました。
保険料積立金は保険料計算基礎の5年チルメル式で計算し、
これをあとで利源分析に使用します。
今回は、入金データから、危険保険料と予定事業費を計算します。
ともに、保険料計算基礎の5年チルメル式で計算します。
危険保険料は利源分析のうち死差損益の確認のため使用します。
予定事業費は利源分析の費差損益と死差損益に使用します。
前提条件は次のとおりとします。
- 保険料の入金に未収過収は生じていない
サンプルの入金データは前回に引き続きこちらに置いています。
入金データについて補足
保有契約データと同じ項目は同じ意味ですが、
入金データ独自の項目は次の意味です。
- premium : 収入保険料
- deposit_year : 保険料の対応年
- deposit_month : 保険料の対応月
保険料の対応年月は入金した年月のことではなく、
月払いであれば、保障する年月のことです。
入金データの危険保険料と予定事業費
まず、共有ファイルのcore_b.py、
前回の保有契約で作成した解約返戻金の関数sv_funcと
保険料積立金の計算res_funcをインポートします。
保有データと同様に内容を確認するためpandasを使います。
from core_b import *
from calc_inforce import net_premzill_func
import pandas as pd
続いて、危険保険料と予定事業費の計算を行います。
# 危険保険料と予定事業費を計算
def calc_premium(year):
# 収入保険料データのファイル名
input_file = f"data/premium{year}.csv"
# 保険料データの取得
premium_df = pd.read_csv(input_file)
# 収入保険料、危険保険料、予定事業費のリスト
Premium_list = []
RiskPrem_list = []
Expenses_list = []
for _, row in premium_df.iterrows():
product = row["product"]
sex = row["sex"]
age = int(row["age"])
term = row["term"]
deposits = int(row["deposits"])
premium = int(row["premium"])
number = int(row["number"])
amount = int(row["amount"])
# 収入保険料の計算
income_premium = premium * number
Premium_list.append(income_premium)
# 危険保険料
riskp, _, netp = net_premzill_func("P", product, sex, age, term, deposits)
risk_prem = roundhu(riskp * amount, 0) * number
RiskPrem_list.append(risk_prem)
# 予定事業費
expenses = (premium - roundhu(netp * amount, 0)) * number
Expenses_list.append(expenses)
# 危険保険料、予定事業費の追加
premium_df["income_prem"] = Premium_list
premium_df["risk_prem"] = RiskPrem_list
premium_df["expected_expenses"] = Expenses_list
return premium_df
保有契約同様に、以下のコードで出力してあげれば、
1件ごとの支払金と保険料積立金が確認できます。
if __name__ == "__main__":
# 出力する入金データの年度
year = 2025
# 出力ファイル名
output_file = f"data/premium{year}_calc.csv"
# 危険保険料と予定事業費の計算
inforce_df = calc_premium(year)
# 出力
inforce_df.to_csv(output_file, index=False, encoding="utf-8-sig")
まとめ
今回は保険料の入金データから、
危険保険料と予定事業費の計算を行いました。
危険保険料は死差損益を計算する項目にはありませんが、
死差損益の結果の妥当性を見るために集計しておきます。
次回は、これまで作成した関数とデータから、
利源分析のうちの死差損益の計算を行います。
📚 ナビゲーション
◀ 前の記事
異動契約の保険料積立金
▶ 次の記事
📚 目次
アクチュアリーのためのPython入門