MENU

Pythonを用いたデータの読み込み・整形・統合・出力

はじめに

このスクリプトは、データの取得から整形、統合、分析、Excel出力までの一連の処理をするメイン関数です。ここでは複雑な処理は記述しておらず、個々の処理は別モジュールに記述しています。

目次

main.py

ソースコード

import sys

from data_formatter import (
    df_merger,
    kokyaku_formatter,
    search_unused_users,
    uriage_formatter,
)
from df_to_excel import df_to_excel
from file_reader import dir_selector, read_files
from pivot_table_maker import mk_pivot_table

if __name__ == "__main__":
    # データを読み込む
    dir_path = dir_selector()
    data = read_files(dir_path)
    if not data:
        print("データが取得できませんでした。")
        sys.exit(1)  # エラーステータスを明示

    # データ整形
    uriage_df = uriage_formatter(data)
    kokyaku_df = kokyaku_formatter(data)

    # データ統合
    merged_df = df_merger(uriage_df, kokyaku_df)

    # ピボットテーブルの作成(変数展開で明示的に)
    by_item, by_price, by_customer, by_region = mk_pivot_table(merged_df)
    pivot_tables = [by_item, by_price, by_customer, by_region]

    # 未使用ユーザー検索
    unused_users_df = search_unused_users(uriage_df, kokyaku_df)

    # 保存パスを環境依存しないように変更
    dir_path = dir_selector()

    # Excel に出力
    df_to_excel(
        dir_path, uriage_df, kokyaku_df, merged_df, pivot_tables, unused_users_df
    )

    print(f"Excelファイルが {dir_path} に保存されました。")

ディレクトリ選択とデータの読み込み

dir_selector() を使ってデータが格納されているフォルダを選択し、read_files() でファイルを読み込みます。

dir_path = dir_selector()
data = read_files(dir_path)
if not data:
    print("データが取得できませんでした。")
    sys.exit(1)
  • dir_selector() でデータフォルダを選択。
  • read_files(dir_path) でCSVやExcelファイルを読み込み。
  • data が空の場合は処理を停止。

データの整形

取得したデータを 売上データと顧客データ に分け、フォーマットを統一します。

uriage_df = uriage_formatter(data)
kokyaku_df = kokyaku_formatter(data)
  • uriage_formatter() で売上データを整理。
  • kokyaku_formatter() で顧客データを整理。

データの統合

売上データと顧客データを統合し、一元的に管理します。

merged_df = df_merger(uriage_df, kokyaku_df)
  • df_merger() で売上データと顧客データをキー情報で統合。

ピボットテーブルの作成

統合データから、商品別・価格別・顧客別・地域別 のピボットテーブルを作成します。

by_item, by_price, by_customer, by_region = mk_pivot_table(merged_df)
pivot_tables = [by_item, by_price, by_customer, by_region]
  • mk_pivot_table() で4種類のピボットテーブルを生成。
  • pivot_tables にリストとして格納。

未使用ユーザーの検索

売上データに含まれていない顧客を抽出します。

unused_users_df = search_unused_users(uriage_df, kokyaku_df)
  • search_unused_users() で未使用ユーザーを特定。

Excelファイルへの出力

すべてのデータをExcel形式で出力します。

df_to_excel(dir_path, uriage_df, kokyaku_df, merged_df, pivot_tables, unused_users_df)
  • df_to_excel() で売上データ・顧客データ・統合データ・ピボットテーブル・未使用ユーザーをExcelに保存。

Python

file_reader.py

Pythonを用いたフォルダ選択とデータの読み込み

data_formatter.py

Pythonを用いたデータのフォーマット統一と統合処理

pivot_table_maker.py

Pythonを用いたピボットテーブルの作成

df_to_excel.py

Pythonを用いたDataFrame の Excel 出力と pickle 保存

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次