概要
Pythonは多くの銀行で広く使われており、効率的なデータ処理や分析に貢献しています。
本稿では、その一例として、日本の大手銀行のPython活用事例を紹介します。
詳細内容
1. みずほ銀行:決算書作成支援システムみずほ銀行は、Pythonを活用して自動で決算書を作成する支援システムを開発しました。
以下は、Pythonを使って株式会社ABCの貸借対照表を作成するプログラムの一部です。
import pandas as pddf = pd.read_excel("ABC貸借対照表.xlsx")
df = df.fillna("") # 空白セルを空文字列に置換headers = list(df.columns)
account_type1 = "" # 1行目の勘定科目分類
account_type2 = "" # 2行目の勘定科目分類
output = ""for i, row in df.iterrows():
if row[0] != "":
account_type1 = row[0]
if row[1] != "":
account_type2 = row[1]
if row[2] != "":
output += f"{account_type1},{account_type2},{row[2]}\n"with open("ABC貸借対照表_output.csv", "w") as f:
f.write("勘定科目分類1,勘定科目分類2,勘定科目名\n")
f.write(output)
このプログラムは、`pandas`ライブラリを使って貸借対照表(Excelファイル)を読み込み、カンマ区切りのCSVファイルに変換します。
カンマ区切りにすることで、他のシステムでも利用しやすくなります。
2. 三菱UFJ銀行:データサイエンス支援プラットフォーム三菱UFJ銀行は、データサイエンティストがデータ分析や機械学習を行うためのプラットフォームとして、Pythonを活用した「MDIPS」というシステムを開発しました。
以下は、MDIPSで使われているPythonコードの一例です。
import pandas as pd
from sklearn.model_selection import train_test_split, GridSearchCV
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score# データの読み込み
df = pd.read_csv("iris.csv")# 特徴量とラベルに分割
X = df.drop(["species"], axis=1)
y = df["species"]# 学習用データとテスト用データに分割
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# パラメータのチューニング
params = {
"n_estimators": [10, 20, 30],
"max_depth": [None, 2, 4, 6]
}
grid_search = GridSearchCV(RandomForestClassifier(), params, cv=3, n_jobs=-1)
grid_search.fit(X_train, y_train)# モデルの評価
y_pred = grid_search.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy}")
このプログラムは、Irisデータセットを使って、ランダムフォレストによる分類器の作成とパラメータのチューニング、モデルの評価を行います。
データの読み込みには、`pandas`ライブラリ、分類器の作成には`sklearn`ライブラリを使っています。
モデルの評価には、`accuracy_score`関数を使っています。
3. 三井住友銀行:自動化システム三井住友銀行は、Pythonを使って多くの作業を自動化するシステムを開発しました。
以下は、Pythonを使って取引データを自動で処理・集計するプログラムの一部です。
import pandas as pd# 取引データの読み込み
df = pd.read_csv("取引データ.csv", encoding="CP932")# 取引先ごとの合計金額を計算
sum_by_partner = df.groupby("取引先名")["金額"].sum()# 取引先ごとの合計金額をCSVファイルに出力
sum_by_partner.to_csv("取引先別合計金額.csv", encoding="CP932", header=["合計金額"])
このプログラムは、`pandas`ライブラリを使って取引データを読み込み、取引先ごとに合計金額を計算してCSVファイルに出力します。
処理の自動化により、手作業で行う場合に比べて作業時間と誤りの発生率を大幅に削減できます。
以上が、日本の大手銀行でPythonを活用した事例の一部です。
これらの例から、Pythonが銀行業界でますます重要な役割を果たしていることが伺えます。
コメント