データ分析や機械学習の手法を身につけてみたものの、実際は、
- 業務のデータや、現実世界のデータをデータ分析、機械学習してみたら、値がない欠損値や欠測値があり、うまくいかなかった
- データ分析や機械学習の手法は、データを整えないと使えない(不完全データではダメ)
- データを整える前処理ってどうやればいいの
といった方も多いのではないでしょうか。
データ分析や機械学習、人工知能のデータとして使えるデータは、(”分析”にとって)完全なデータと言えます。
しかし現実に業務で出会うデータの多くは、不完全なデータがほとんどです。
なので、データ分析や機械学習・人工知能などを実行するためには、
- 不完全なデータを完全なデータにする
というステップが必要になります。
これを「前処理」や「クレンジング」と呼びます。
分析するためには前処理が必要とわかったとしても、
初学者の方なら、
- 前処理には、どんな手法・やり方があるの?
- データをどう前処理すればいいの?
- 自分のデータには、どんな前処理が適しているの?
といった悩みもあるかと思います。
そこで本記事では、
データ前処理やクレンジングについて、
- 前処理にはどんなやり方があるか?
- どう前処理すればいいのか?
- 前処理方法の使い分けはどうすればいいの?
といったことについて学べるおすすめの本をご紹介します。
本記事の概要
【前処理 クレンジング】欠損値、欠測値、不完全なデータなどを前処理し、現実のデータを分析・モデリングしたいあなたにおすすめの本はこちらです【データ分析 機械学習】
「エクセル(Excel)」 で、前処理・クレンジングをサクッと実行したいあなたにはこちら
数万件の汚いエクセルデータに困っている人のための Excel多量データクレンジング
本書は、増大するデータを、エクセルで整形して整えるための方法が学べる1冊です。
大量のエクセルデータの中には、入力ミス、処理ミス、空白、重複など、そのままではデータ分析ができない状態であることが多いのではないでしょうか。
小さいデータであれば手作業でも可能かと思いますが、
大きいデータで、定期的に増えていくデータなどでは、
手作業で行っていたら他の業務に支障が出てしまうのではないでしょうか。
また、あなたの職場で使われていないデータがあれば、
それを分析に使える形に整えて(クレンジングして)データ分析することで、
新たな知見を見つけることが可能です。
使われていなかったゴミを宝に変えることができるかもしれません。
本書では、上記の整っていない不十分なデータを、エクセルを使って、分析手法に使えるデータに変換する方法を学ぶことができる1冊です。
エクセルデータの表の使われ方は大きく7つのパターンに分けられます。
それぞれのパターンごとにデータクレンジングの対処法を学べるこちらもございます↓
Python の 「Pandas」 を活用することで、前処理・クレンジングをサクッと実行できます
現場で使える!pandasデータ前処理入門 機械学習・データサイエンスで役立つ前処理手法
本書は、Python のライブラリ Pandas 初学者の方向けにPandasのデータ構造のいろはから、
中級者になるための「データ前処理」の考え方や方法を、とてもわかりやすく、基本から学べる1冊です。
Pandas について必須の概念「シリーズ」「データフレーム」「インデックス」について、1つひとつ、とてもわかりやすく解説されています。
もちろん前処理に必要なPandasの使い方も網羅的に解説されています。
- データの集計や並べ替え、変形、グループ化
- 欠損値(欠測値)、外れ値、重複データの処理
などを基礎から丁寧に学べます。
各解説事項では、解説の後にコード例があるのですが、
コード例が解説に必要な内容をミニマムで表現しています。
なのでわかりやすいだけでなく、誤解することなくスムーズに理解でき、独学でも安心です。
Pandas について、本書を通して手を動かしてみることで、
ひと通りの基礎を身につけることができます。
本書はそのコンセプト、
- データ分析や機械学習のキモとも言える、データの前処理にPandasを活用する
について、まさにデータ分析や機械学習の1つひとつ基本技術からステップバイステップで学んでいける1冊です。
加えて、本書の章構成などがわかりやすいので、
- 辞書的に参照しながら、その都度必要なところを見ながら活用していく
などの使い方も可能です。
本書の使い方としては、最初に一度、全体をサクッと目を通しておき、
後でPandasを使うときには。
- 必要なところを目次を見ながら辞書を引くようにして使う
といった使い方もできます。
辞書的に参照しながら、徐々に身につけていくことで、
繰り返し学習となり、再現性を高めながら良いアウトプットができるようになります。
他にも、普段エクセルを使っていても、
- 大規模なデータをスムーズに扱わないといけないなぁ
- 複雑な処理が必要だなぁ
- 同じ処理を定期的にやりそう
といった場合には、Pandasで実装しておくと、
長期的に見て、資産的なプログラムにでき、あなたの生産性はどんどん高まっていくはずです。
本書はその辞書としても末長く重宝する1冊です。
Python 自体の解説も最初にありますので、
- 久しぶりに使うからPython忘れちゃった
といった場合にも本書1冊だけでだいじょうぶです。
データサイエンスや機械学習にPandasを活用したいあなたにはもちろん、
エクセルでの分析を、より快適に・生産的にしていきたいあなたにもおすすめの1冊となっています。
統計解析フリーソフト「R」を使った欠損値・欠測値を埋めることができる「代入法(補完法)」について詳しく学べる1冊はこちら
欠測データ処理: Rによる単一代入法と多重代入法 (統計学One Point)
本書は、欠損・欠測データについて、統計ソフト「R」を使って、imputation(補完・代入)する方法が詳しく解説された1冊です。
本書の特徴は、数式に頼らず、具体的な手順を説明することで、
欠損値・欠測値をどのように処理していけばいいか、手を動かしながら学べます。
主に社会科学でよく使われる手法(平均値のt検定、重回帰分析、ダミー変数を用いた重回帰分析、ロジスティック回帰分析、時系列分析、パネルデータ分析)を中心に、欠損値・欠測値の扱い方を具体的に学べます。
例で使われているデータはウェブで入手可能なものが使われており、本書の内容を自分でやってみることが可能です。
また、統計解析ソフト「R」が使われており、フリーソフトなので、ダウンロードすれば誰でもすぐに無料で使うことができます。
統計解析フリーソフト「R」ってなに?
というあなたにはこちらの記事がございます↓
『統計解析フリーソフト「R」で、楽しみながら統計を学びたいあなた、こちらはいかがでしょうか【Rで楽しむ統計 (Wonderful R 1)】』
統計解析フリーソフト「R」を使って、
前処理例をコード付きで手を動かしながら学べる1冊はこちら↓
データ分析プロセス (シリーズ Useful R 2)
本書はデータ分析での欠損値・欠測値の扱いにとどまらず、データ分析プロセスのそれぞれについて、
統計解析フリーソフト「R」を使って、手を動かしながら学べるお得な1冊となっています。
ビジネスにおけるデータ分析では、
- データ分析をどう定義するか
- データ加工が難しい
- 欠損値・欠測値、外れ値への対応方法
- 不均衡データの扱い方
などが課題としてあげられます。
本書では、これらの課題を克服するための考え方や、
Rによる実装方法など、
順を追って、1つひとつ丁寧に学ぶことができます。
他の一般的なデータ分析の書籍が分析手法を中心に書かれていることが多いですが、
本書では欠損値・欠測値への対応方法についての解説も詳しく書かれているのが特徴的です。
本書は欠損値・欠測地への対応も含めた、データ分析のプロセス全般について系統的に学べる良書となっています。
「SAS」での欠測データの扱い方を学ぶならこちら
欠測データの統計解析 (統計解析スタンダード)
本書は欠測値を含む不完全なデータを統計解析するときのやり方について、SASのコードとともに学べる1冊です。
欠測データについての語句や定義がされた後、
- 尤度による手法
- ベイズによる手法
- 重み付けによる手法
などが解説され、最後に
- 感度分析
が説明され、複数のシナリオによる比較のやり方が学べます。
本書では主に医学系の例が扱われていますので、医学・保険分野の方には特に馴染みやすい1冊です。
もちろんどの分野でも活用できるように解説がされていますし、
統計解析ソフト「SAS」を使った解析コードが示されているので、SASを使われている方にもおすすめの1冊となっています。
「感度」分析などは、こちらの本にも解説がございます↓
様々なデータ形式に対する前処理(テーブルデータ、画像データ、時系列データなど)について、
機械学習プロセス全体の中で学べる1冊はこちら
機械学習のための「前処理」入門
機械学習の手法は学んだけど、実データを扱った時に、
- どう前処理したらいいの?
- 欠損値・欠測値があって、手法が使えない
など、データの前処理の重要性を感じる場面も多いのではないでしょうか。
本書は、機械学習のプロセス全体の流れに加え、
様々なデータ形式(構造化データ、画像データ、時系列データ、自然言語データ)について、
それぞれ前処理方法を学ぶことができます。
あなたが処理したい形式のデータについて、1つひとつ丁寧に解説があるので、
あなたが分析しながら参照しつつ解析を進めていくことが可能です。
機械学習の手法は学んだけど、手法を使うまでデータを整えるのが難しいあなたにオススメの1冊となっています。
データ分析のコンペで有名なKaggleですが、
Kaggle(カグル)のデータを題材にして、
- 良いモデルを作るための「前処理」
について、手を動かしながら学べる本がこちら↓
Kaggleで勝つデータ分析の技術
Kaggleはデータ分析コンペの1つで、世界中のデータ分析の専門家や愛好家(?)の方が集まり、
与えられたお題について、より良いモデルを競い合う大会です。
企業がスポンサーとして実データを提供している場合もあり、そのデータには欠損値や欠測値などがあり、
それらをどう扱うかで良いモデルができるかどうかが影響されます。
なので、Kaggle では、参加者たちの試行錯誤により、欠損値や欠測値の扱い方の成功例などの知恵が蓄積されています。
本書では、Kaggleで好成績を収めた著者らによる、
欠損値・欠測値の扱いを含めて
Kaggleでの分析のやり方やコツなども学べます。
欠損値・欠測値については、6ページ分サクッと書かれているので、
欠損値・欠測値の扱い方を網羅的に学ぶというよりも、
- よいモデルを作成するプロセスの中での欠損値、欠測値の扱い方
を学ぶのに適した1冊となっています。本書は、
- 実務データで欠損値・欠測値の扱いに手強さを感じている方
- これからKaggleに挑戦していきたい方
などにオススメの1冊となっています。
Kaggleについては、以下の書籍もございます↓
前処理・クレンジングを系統立てて網羅的に学びたいあなたにはこちらがございます↓
前処理大全データ分析のためのSQL/R/Python実践テクニック
本書は、統計解析やディープラーニングなどの機械学習のためのデータ前処理の方法論が系統的にまとめられた1冊です。
実務の中での前処理は試行錯誤の泥臭い作業ですが、
使える手法や考え方を整理しておくと役立ちますよね。
本書は、前処理で必要となる考え方ややり方、それぞれの実装方法などを、
SQL / R / Python のコードとともに手を動かしながら学べます。
各前処理課題について、
- データ分析初学者の方が陥りやすい、あまり良くないコード例
- それを改善したプロが書くコード例
がそれぞれ、SQL/R/Python で実装されていて、あなたが使いたい言語でサクサク学べます。
良い例・悪い例が比較できることで、自分のコードを改善しやすくなります。
データ分析の初心者の方なら、一通り練習問題として実装練習をすれば、前処理力が格段にアップします。
データ分析の経験者の方なら、本書を手元に置いておくことで、普段使う言語だけでなく、使わない言語でも、
- より書きやすい書き方
- より性能のよい実装方法
- 顧客の注文に幅広く応える順応力
などをつけることができます。
前処理のやり方が系統的にまとめられているので、
手元に置いて困った時に辞書的にも末長く使える1冊となっています。
ただし、本書では、数値・文字・論理値のデータの欠損値・欠測値を扱っているので、
画像データ・音声データ・動画データは対象外となっていますのでご注意ください。
画像データ、音声データ、動画データの前処理が学びたいあなたはこちらをどうぞ↓
現場のプロが伝える前処理技術 ~基礎から実践まで学ぶ テーブルデータ/自然言語/画像データの前処理
本書はデータ分析や機械学習業務に必須の前処理について、
様々なデータ形式を対象として、1つひとつ丁寧に学ぶことができる1冊です。
私たちが生きている世界は複雑で、そこから得られるデータは
- 複雑・不完全、構造化されていない
といった分析にとっって「扱いにくい」データとして入手されます。
この扱いにくいデータを、分析可能なデータにするのが前処理ですが、
得られたデータごとに、個別に前処理方法を考える必要があります。
そこが腕の見せ所でもある反面、業務での難しさの一因となっています。
本書は、業務でデータサイエンティストや機械学習エンジニアなど、
- データの前処理を行う業務を目指す初学者の方
は、
- 前処理方法の基礎から典型的な処理方法
を体系的に学ぶことができます。
加えて、
- データ分析や機械学習業務などですでに活躍されている方
は、
- 最先端の研究の内容やその手法
などのトピックがあり、あなたの業務の参考にすることができます。
- テーブルデータ
- 自然言語データ(テクストデータ)
- 画像データ
といったデータ形式ごとに、よく使う手法が系統的に整理されているので、
業務で辞書のように使うこともできる本となっています。
わかりやすいサンプルコードが付いていますので、
前処理という業務に直結する内容を扱いながら、
Pythonの基本文法やNumpy, Pandas, Scipyなどのライブラリの使い方を、
手を動かしながら学ぶことができ、基礎と実践力を同時につけれる一石二鳥の本となっています。
本書はデータ分析や機械学習業務の8割を占めると言われる前処理について、
様々なデータ形式を対象として、
Pythonやそのライブラリの使い方とともに、
1つひとつ基礎から丁寧に学ぶことができ、
辞書としても末長く使えるおすすめの本となっています。
参考文献や参考URLも充実しているので、さらなる学びも加速さsてくれる1冊です。
欠測値・欠損値のあるデータへのデータ分析アルゴリズムの1つ「EMアルゴリズム」ならこちら↓
EMアルゴリズム (統計学One Point)
本書は、欠測値や欠損値を含んだ不完全なデータに対する数値解法の1つ「EMアルゴリズム」の詳細な解説書です。
データ分析を学んでいる初学者の方は、「最尤法(さいゆうほう)」を目にする機会も多いのではないでしょうか。
最尤法はデータが従う確率分布のパラメータを推定する方法の1つで、データ分析や機械学習などでもよく使われます。
最尤法を欠測値や欠損値があるデータへ拡張したのが「EMアルゴリズム」です。
なので、EMアルゴリズムを使うと、欠測値や欠損値があるデータを扱うことができます(ただし、どんな欠測値・欠損値にも対応しているわけではないでの、詳しくは本書をごらんください)。
EMアルゴリズムのEMは、
Expectation-Maximizationアルゴリズムの略で、
アルゴリズムは、E-stepとM-stepの2つに分けられます。
2つに分けれることで、記述しやすく、理解しやすくなっています。
さらにEMアルゴリズムの特徴として、
- 数値的に安定している
- 様々なモデルに柔軟に適用できる
などがあります。
これらの特徴から、自然科学分野(医学・疫学など)だけでなく、社会科学分野(経営・経済・心理)でも様々な分野で活用されています。
加えて、画像処理や音声処理・信号処理などの機械学習でよく使われてる数値アルゴリズムとなっています。
なので、EMアルゴリズムを理解することで、
欠測値や欠損値の扱いだけでなく、
人工知能・機械学習の理解も促進することができます。
また、様々な分野で使うことができる汎用的な手法と言えます。
本書は
- EMアルゴリズムの基礎(最尤法)から解説してあり、
- EMアルゴリズムの定式化、収束性などに加え、
- EMアルゴリズムの拡張(Monte Carlo EM, Data Augmentation)
- EMアルゴリズムの加速(非線形方程式の反復解法, 補外法)
など、基礎から応用まで、系統的に身につけることができます。
注意点としては、数式での表現が多いので、数式が苦手な方は線形代数や統計学などを先にやっておくと理解が促進されるかと思います。
ただ、付録として、フリーの統計解析ソフト「R」を使ったEMアルゴリズムのチュートリアルがありますので、
本編で理解した内容や不確かななことを、手を動かして確認してみることも可能です。
本書はEMアルゴリズムを基礎から理解し、身につけ、応用・拡張したいあなたにオススメの1冊となっています。
というわけで、本記事では、
データ前処理やクレンジングについて、
- どんなやり方があるか?
- どう前処理すればいいのか?
- 前処理方法の使い分けはどうすればいいの?
といったことについて学べるおすすめの本をご紹介しました。
こちらもございます↓
↓こちら無料です