case01(仮名加工情報): 加工仕様 — 5/7¶
加工の設計 の方針を、具体的な処理(どの列をどう変換するか)に落とし込みます。実際の Python コードと実行は ② Colab で。
3つのルール¶
- 年代への一般化: 基準日で年齢を算出し、一次情報(図表1-3)にならい「10代」「20代」…「70代」「80代以上」に区分(80歳以上は「80代以上」にまとめる)。
- 住所の一般化: 「都道府県 + 市区町村」まで残し、丁目・番地以降を削除。政令市は「◯◯市◯◯区」まで(例: 横浜市青葉区)。
- 整理番号: 会員IDと1対1で対応する整理番号(例:
R000001)を付与し、顧客・購買・アクセスの3テーブルで同じ整理番号を使って個人単位の履歴結合を維持。元の会員IDは削除する。
加工仕様一覧(列ごとの処理)
| No. | 元テーブル | 元項目 | 加工 | 処理 | 加工後 |
|---|---|---|---|---|---|
| 1 | customers | 会員ID | 置換 | 会員ID→整理番号の対応表を作り置換 | 整理番号 |
| 2 | customers | 氏名 | 削除 | 列削除 | ― |
| 3 | customers | 生年月日 | 一般化 | 基準日で年齢→10歳区切りの年代(80歳以上は「80代以上」) | 年代 |
| 4 | customers | 性別 | 加工なし | そのまま | 性別 |
| 5 | customers | 郵便番号 | 削除 | 列削除 | ― |
| 6 | customers | 住所 | 一般化 | 市区町村まで抽出 | 市区町村 |
| 7 | customers | 携帯電話番号 | 削除 | 列削除 | ― |
| 8 | customers | 電子メールアドレス | 削除 | 列削除 | ― |
| 9 | customers | クレジットカード番号 | 削除 | 列削除 | ― |
| 10 | web_access | Cookie ID | 削除 | 列削除 | ― |
| 11 | purchases/web_access | 会員ID | 置換 | No.1 の対応表で整理番号へ | 整理番号 |
| 12 | purchases | 購入年月日/品目/数量/金額 | 加工なし | そのまま | 同左 |
| 13 | web_access | アクセス日時/閲覧カテゴリ | 加工なし | そのまま | 同左 |
- 年齢 = 基準日の年 − 生年(基準日時点で算出)。
→ 加工後のスキーマは 加工後テーブル定義。実行は ② 実装(Colab)。