試し読み
Python実践データ分析100本ノック (単行本)
データ分析の現場にあって入門書にないもの――それは、「汚いデータ」(ダーティデータ)です。本書は、データ分析の現場では、どんなデータに出会い、どのような問題が生じ、どう対応すればよいのかというノウハウを解説します。事前の加工(視覚化)から機械学習、最適化問題まで、100本ノックをこなして、ビジネス現場で即戦力になれる「応用力」を身につけましょう! Pandas、Numpy、Matplotlibなど10個のライブラリを練習します。
第1部 基礎編:データ加工
第1章 ウェブからの注文数を分析する10本 ノック
ノック1:データを読み込んでみよう
ノック2:データを結合(ユニオン)してみよう
ノック3:売上データ同士を結合(ジョイン)してみよう
ノック4:マスターデータを結合(ジョイン)してみよう
ノック5:必要なデータ列を作ろう
ノック6:データ検算をしよう
ノック7:各種統計量を把握しよう
ノック8:月別でデータを集計してみよう
ノック9:月別、商品別でデータを集計してみよう
ノック10:商品別の売上推移を可視化してみよう
第2章 小売店のデータでデータ加工を行う10本 ノック
ノック11:データを読み込んでみよう
ノック12:データの揺れを見てみよう
ノック13:データに揺れがあるまま集計してみよう
ノック14:商品名の揺れを補正しよう
ノック15:金額欠損値の補完をしよう
ノック16:顧客名の揺れを補正しよう
ノック17:日付の揺れを補正しよう
ノック18:顧客名をキーに2つのデータを結合(ジョイン)しよう
ノック19:クレンジングしたデータをダンプしよう
ノック20:データを集計しよう
第2部 実践編①:機械学習
第3章 顧客の全体像を把握する10本 ノック
ノック21:データを読み込んで把握しよう
ノック22:顧客データを整形しよう
ノック23:顧客データの基礎集計をしよう
ノック24:最新顧客データの基礎集計をしてみよう
ノック25:利用履歴データを集計しよう
ノック26:利用履歴データから定期利用フラグを作成しよう
ノック27:顧客データと利用履歴データを結合しよう
ノック28:会員期間を計算しよう
ノック29:顧客行動の各種統計量を把握しよう
ノック30:退会ユーザーと継続ユーザーの違いを把握しよう
第4章 顧客の行動を予測する10本 ノック
ノック31:データを読み込んで確認しよう
ノック32:クラスタリングで顧客をグループ化しよう
ノック33:クラスタリング結果を分析しよう
ノック34:クラスタリング結果を可視化してみよう
ノック35:クラスタリング結果をもとに
退会顧客の傾向を把握しよう
ノック36:翌月の利用回数予測を行うための準備をしよう
ノック37:特徴となる変数を付与しよう
ノック38:来月の利用回数予測モデルを作成しよう
ノック39:モデルに寄与している変数を確認しよう
ノック40:来月の利用回数を予測しよう
第5章 顧客の退会を予測する10本 ノック
ノック41:データを読み込んで利用データを整形しよう
ノック42:退会前月の退会顧客データを作成しよう
ノック43:継続顧客のデータを作成しよう
ノック44:予測する月の在籍期間を作成しよう
ノック45:欠損値を除去しよう
ノック46:文字列型の変数を処理できるように整形しよう
ノック47:決定木を用いて退会予測モデルを作成してみよう
ノック48:予測モデルの評価を行い、
モデルのチューニングをしてみよう
ノック49:モデルに寄与している変数を確認しよう
ノック50:顧客の退会を予測しよう
第3部 実践編②:最適化問題
第6章 物流の最適ルートをコンサルティングする10本 ノック
ノック51:物流に関するデータを読み込んでみよう
ノック52:現状の輸送量、コストを確認してみよう
ノック53:ネットワークを可視化してみよう
ノック54:ネットワークにノード(頂点)を追加してみよう
ノック55:ルートの重みづけを実施しよう
ノック56:輸送ルート情報を読み込んでみよう
ノック57:輸送ルート情報からネットワークを可視化してみよう
ノック58:輸送コスト関数を作成しよう
ノック59:制約条件を作ってみよう
ノック60:輸送ルートを変更して、
輸送コスト関数の変化を確認しよう
第7章 ロジスティクスネットワークの最適設計を行う10本 ノック
ノック61:輸送最適化問題を解いてみよう
ノック62:最適輸送ルートをネットワークで確認しよう
ノック63:最適輸送ルートが
制約条件内に収まっているかどうかを確認しよう
ノック64:生産計画に関するデータを読み込んでみよう
ノック65:利益を計算する関数を作ってみよう
ノック66:生産最適化問題を解いてみよう
ノック67:最適生産計画が
制約条件内に収まっているかどうかを確認しよう
ノック68:ロジスティクスネットワーク設計問題を解いてみよう
ノック69:最適ネットワークにおける
輸送コストとその内訳を計算しよう
ノック70:最適ネットワークにおける
生産コストとその内訳を計算しよう
第8章 数値シミュレーションで消費者行動を予測する10本 ノック
ノック71:人間関係のネットワークを可視化してみよう
ノック72:口コミによる情報伝播の様子を可視化してみよう
ノック73:口コミ数の時系列変化をグラフ化してみよう
ノック74:会員数の時系列変化をシミュレーションしてみよう
ノック75:パラメータの全体像を、「相図」を見ながら把握しよう
ノック76:実データを読み込んでみよう
ノック77:リンク数の分布を可視化しよう
ノック78:シミュレーションのために
実データからパラメータを推定しよう
ノック79:実データとシミュレーションを比較しよう
ノック80:シミュレーションによる将来予測を実施しよう
第4部 発展編:画像処理/言語処理
第9章 潜在顧客を把握するための画像認識10本 ノック
ノック81:画像データを読み込んでみよう
ノック82:映像データを読み込んでみよう
ノック83:映像を画像に分割し、保存してみよう
ノック84:画像内のどこに人がいるのかを検出してみよう
ノック85:画像内の人の顔を検出してみよう
ノック86:画像内の人がどこに顔を向けているのかを
検出してみよう
ノック87:検出した情報を統合し、タイムラプスを作ってみよう
ノック88:全体像をグラフにして可視化してみよう
ノック89:人通りの変化をグラフで確認しよう
ノック90:移動平均を計算することで
ノイズの影響を除去しよう
第10章 アンケート分析を行うための自然言語処理10本 ノック
ノック91:データを読み込んで把握しよう
ノック92:不要な文字を除外してみよう
ノック93:文字数をカウントしてヒストグラムを表示してみよう
ノック94:形態素解析で文章を分割してみよう
ノック95:形態素解析で文章から「動詞・名詞」を抽出してみよう
ノック96:形態素解析で抽出した頻出する名詞を確認してみよう
ノック97:関係のない単語を除去してみよう
ノック98:顧客満足度と頻出単語の関係を見てみよう
ノック99:アンケート毎の特徴を表現してみよう
ノック100:類似アンケートを探してみよう
付録
Appendix① データ結合とデータ正規化
Appendix② 機械学習
Appendix③ 最適化問題
第1章 ウェブからの注文数を分析する10本 ノック
ノック1:データを読み込んでみよう
ノック2:データを結合(ユニオン)してみよう
ノック3:売上データ同士を結合(ジョイン)してみよう
ノック4:マスターデータを結合(ジョイン)してみよう
ノック5:必要なデータ列を作ろう
ノック6:データ検算をしよう
ノック7:各種統計量を把握しよう
ノック8:月別でデータを集計してみよう
ノック9:月別、商品別でデータを集計してみよう
ノック10:商品別の売上推移を可視化してみよう
第2章 小売店のデータでデータ加工を行う10本 ノック
ノック11:データを読み込んでみよう
ノック12:データの揺れを見てみよう
ノック13:データに揺れがあるまま集計してみよう
ノック14:商品名の揺れを補正しよう
ノック15:金額欠損値の補完をしよう
ノック16:顧客名の揺れを補正しよう
ノック17:日付の揺れを補正しよう
ノック18:顧客名をキーに2つのデータを結合(ジョイン)しよう
ノック19:クレンジングしたデータをダンプしよう
ノック20:データを集計しよう
第2部 実践編①:機械学習
第3章 顧客の全体像を把握する10本 ノック
ノック21:データを読み込んで把握しよう
ノック22:顧客データを整形しよう
ノック23:顧客データの基礎集計をしよう
ノック24:最新顧客データの基礎集計をしてみよう
ノック25:利用履歴データを集計しよう
ノック26:利用履歴データから定期利用フラグを作成しよう
ノック27:顧客データと利用履歴データを結合しよう
ノック28:会員期間を計算しよう
ノック29:顧客行動の各種統計量を把握しよう
ノック30:退会ユーザーと継続ユーザーの違いを把握しよう
第4章 顧客の行動を予測する10本 ノック
ノック31:データを読み込んで確認しよう
ノック32:クラスタリングで顧客をグループ化しよう
ノック33:クラスタリング結果を分析しよう
ノック34:クラスタリング結果を可視化してみよう
ノック35:クラスタリング結果をもとに
退会顧客の傾向を把握しよう
ノック36:翌月の利用回数予測を行うための準備をしよう
ノック37:特徴となる変数を付与しよう
ノック38:来月の利用回数予測モデルを作成しよう
ノック39:モデルに寄与している変数を確認しよう
ノック40:来月の利用回数を予測しよう
第5章 顧客の退会を予測する10本 ノック
ノック41:データを読み込んで利用データを整形しよう
ノック42:退会前月の退会顧客データを作成しよう
ノック43:継続顧客のデータを作成しよう
ノック44:予測する月の在籍期間を作成しよう
ノック45:欠損値を除去しよう
ノック46:文字列型の変数を処理できるように整形しよう
ノック47:決定木を用いて退会予測モデルを作成してみよう
ノック48:予測モデルの評価を行い、
モデルのチューニングをしてみよう
ノック49:モデルに寄与している変数を確認しよう
ノック50:顧客の退会を予測しよう
第3部 実践編②:最適化問題
第6章 物流の最適ルートをコンサルティングする10本 ノック
ノック51:物流に関するデータを読み込んでみよう
ノック52:現状の輸送量、コストを確認してみよう
ノック53:ネットワークを可視化してみよう
ノック54:ネットワークにノード(頂点)を追加してみよう
ノック55:ルートの重みづけを実施しよう
ノック56:輸送ルート情報を読み込んでみよう
ノック57:輸送ルート情報からネットワークを可視化してみよう
ノック58:輸送コスト関数を作成しよう
ノック59:制約条件を作ってみよう
ノック60:輸送ルートを変更して、
輸送コスト関数の変化を確認しよう
第7章 ロジスティクスネットワークの最適設計を行う10本 ノック
ノック61:輸送最適化問題を解いてみよう
ノック62:最適輸送ルートをネットワークで確認しよう
ノック63:最適輸送ルートが
制約条件内に収まっているかどうかを確認しよう
ノック64:生産計画に関するデータを読み込んでみよう
ノック65:利益を計算する関数を作ってみよう
ノック66:生産最適化問題を解いてみよう
ノック67:最適生産計画が
制約条件内に収まっているかどうかを確認しよう
ノック68:ロジスティクスネットワーク設計問題を解いてみよう
ノック69:最適ネットワークにおける
輸送コストとその内訳を計算しよう
ノック70:最適ネットワークにおける
生産コストとその内訳を計算しよう
第8章 数値シミュレーションで消費者行動を予測する10本 ノック
ノック71:人間関係のネットワークを可視化してみよう
ノック72:口コミによる情報伝播の様子を可視化してみよう
ノック73:口コミ数の時系列変化をグラフ化してみよう
ノック74:会員数の時系列変化をシミュレーションしてみよう
ノック75:パラメータの全体像を、「相図」を見ながら把握しよう
ノック76:実データを読み込んでみよう
ノック77:リンク数の分布を可視化しよう
ノック78:シミュレーションのために
実データからパラメータを推定しよう
ノック79:実データとシミュレーションを比較しよう
ノック80:シミュレーションによる将来予測を実施しよう
第4部 発展編:画像処理/言語処理
第9章 潜在顧客を把握するための画像認識10本 ノック
ノック81:画像データを読み込んでみよう
ノック82:映像データを読み込んでみよう
ノック83:映像を画像に分割し、保存してみよう
ノック84:画像内のどこに人がいるのかを検出してみよう
ノック85:画像内の人の顔を検出してみよう
ノック86:画像内の人がどこに顔を向けているのかを
検出してみよう
ノック87:検出した情報を統合し、タイムラプスを作ってみよう
ノック88:全体像をグラフにして可視化してみよう
ノック89:人通りの変化をグラフで確認しよう
ノック90:移動平均を計算することで
ノイズの影響を除去しよう
第10章 アンケート分析を行うための自然言語処理10本 ノック
ノック91:データを読み込んで把握しよう
ノック92:不要な文字を除外してみよう
ノック93:文字数をカウントしてヒストグラムを表示してみよう
ノック94:形態素解析で文章を分割してみよう
ノック95:形態素解析で文章から「動詞・名詞」を抽出してみよう
ノック96:形態素解析で抽出した頻出する名詞を確認してみよう
ノック97:関係のない単語を除去してみよう
ノック98:顧客満足度と頻出単語の関係を見てみよう
ノック99:アンケート毎の特徴を表現してみよう
ノック100:類似アンケートを探してみよう
付録
Appendix① データ結合とデータ正規化
Appendix② 機械学習
Appendix③ 最適化問題