書籍概要

前処理大全
[データ分析のためのSQL/R/Python実践テクニック]

著者
発売日
更新日

概要

データサイエンスの現場において,その業務は「前処理」と呼ばれるデータの整形に多くの時間を費やすと言われています。「前処理」を効率よくこなすことで,予測モデルの構築やデータモデリングといった本来のデータサイエンス業務に時間を割くことができるわけです。本書はデータサイエンスに取り組む上で欠かせない「前処理スキル」の効率的な処理方法を網羅的に習得できる構成となっています。ほとんどの問題についてR,Python,SQLを用いた実装方法を紹介しますので,複数のプロジェクトに関わるようなデータサイエンスの現場で重宝するでしょう。

目次

  • はじめに
  • 0-1 本書の目的
  • 0-2 対象読者
  • 0-3 本書の構成

Part1 入門前処理
第1章 前処理とは

  • 1-1 データ
  • 1-2 前処理の役割
  • 1-3 前処理の流れ
  • 1-4 3つのプログラミング言語
  • 1-5 パッケージ/ライブラリ
  • 1-6 データセット
  • 1-7 データの読み込み

Part2 データ構造を対象とした前処理
第2章 抽出

  • 2-1 データ列指定による抽出
  • 2-2 条件指定による抽出
  • 2-3 データ値に基づかないサンプリング
  • 2-4 サンプリング

第3章 集約

  • 3-1 データ数,種類数の算出
  • 3-2 合計値の算出
  • 3-3 極値,代表値の算出
  • 3-4 ばらつき具合の算出
  • 3-5 最頻値の算出
  • 3-6 順位の算出

第4章 結合

  • 4-1 マスタテーブルの結合
  • 4-2 条件に応じた結合テーブルの切り替え
  • 4-3 過去データの結合
  • 4-4 全結合

第5章 分割

  • 5-1 レコードデータにおけるモデル検証用のデータ分割
  • 5-2 時系列データにおけるモデル検証用のデータ分割

第6章 生成

  • 6-1 アンダーサンプリングによる不均衡データの調整
  • 6-2 オーバーサンプリングによる不均衡データの調整

第7章 展開

  • 7-1 横持ちへの変換
  • 7-2 スパースマトリックスへの変換

Part3 データ内容を対象とした前処理
第8章 数値型

  • 8-1 数値型への変換
  • 8-2 対数化による非線形な変化
  • 8-3 カテゴリ化による非線形な変化
  • 8-4 カテゴリ化による非線形な変化
  • 8-5 外れ値の除去
  • 8-6 主成分分析による次元圧縮
  • 8-7 数値の補完

第9章 カテゴリ型

  • 9-1 カテゴリ型への変換
  • 9-2 ダミー変数化
  • 9-3 カテゴリ値の集約
  • 9-4 カテゴリ値の組み合わせ
  • 9-5 カテゴリ型の数値化
  • 9-6 カテゴリ型の補完

第10章 日時型

  • 10-1 日時型,日付型への変換
  • 10-2 年/月/日/時刻/分/秒/曜日への変換
  • 10-3 日時差への変換
  • 10-4 日時型の増減
  • 10-5 季節への変換
  • 10-6 時間帯への変換
  • 10-7 平休日への変換

第11章 文字型

  • 11-1 形態素解析による分解
  • 11-2 単語の集合データに変換
  • 11-3 TF-IDFによる単語の重要度調整

第12章 位置情報型

  • 12-1 日本測地系から世界測地系の変換,度分秒から度への変換
  • 12-2 2点間の距離,方角の計算

Part4 実践前処理
第13章 演習問題

  • 13-1 集計分析の前処理
  • 13-2 レコメンデーションの前処理
  • 13-3 予測モデリングの前処理

サポート

正誤表

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2018年4月16日最終更新)

P88 図4.2 (INNER) JOINの右側のid_aの値

a_1 a_2 a_3
a_1 a_2 a_4

P195 sql_awesome.sqlの4行目から6行目

SELECT
  type,
  length,

  -- thicknessの欠損値を1で補完
  COALESCE(thickness, 1) AS thickness,
  fault_flg
FROM work.production_missn_tb
SELECT
  type,
  length,
  COALESCE(thickness,
           (SELECT AVG(thickness) FROM work.production_missn_tb))
    AS thickness,
  fault_flg
FROM work.production_missn_tb

商品一覧