
Pythonという言語がデータ分析を練習するのに良いって聞いた。
どうやって勉強するのが効率的なのかな・・・
こんな疑問にお答えします。
Pythonはデータ分析を行うにあたってよく使う言語です!
主にPythonが活躍するシーンは3つあります。
- データを収集する段階
- データを加工する段階
- データを分析する段階
データを収集する段階を「スクレイピング」と言い、これだけでも案件が受注できます。
実務ではデータの加工と分析をやることが多いので、ここでは「加工」と「分析」を中心にお話しますね。
この記事でわかること
- Pythonでデータ分析するのに必要最低限の技術
- 効率よくPythonデータ分析を習得するためのステップ
Pythonデータ分析で学ぶべき技術
Pythonには「ライブラリ」という概念があります。
import 〇〇 とプログラム內に書くことによって、そのライブラリに入っている機能を使えちゃうんです。
シャーマンキングでいえば、オーバーソウルみたいな感じです笑
Pythonはオープンソースソフトウェアと呼ばれる言語で、世界中の人々がライブラリを開発しています。
オープンソースソフトウェア(Open Source Software)は、頭文字を取ってOSSと略されます。作成者がソースコードを無償で公開していて、利用や改変、再配布が自由に許可されているソフトウェアのことです。
発注ラウンジより引用(https://hnavi.co.jp/knowledge/blog/oss/)

世界中のすごい人達が日々便利なライブラリを増やし続けているんです。
ライブラリをimportすることで、いろんな機能を使うことが出来ます。
たくさんライブラリがあると言われても困ってしまいますよね。
ここでは、データ分析を行うにあたって習得したいライブラリについて説明します。
データ加工で使うライブラリ
基本的なデータ分析を行うにあたっては、以下の3つのライブラリを習得しましょう。
この記事ではテーブルタイプ(表)のデータを使った分析を想定しています。
画像処理などの分析の場合は他にも必要な知識・技術があります。
データ分析に必要なライブラリ
- pandas:テーブル操作につかう
- numpy:行列計算に使う
- Scikit-learn:機械学習・予測に使う
ひとつずつ説明していきますね。
Pandas:テーブル操作用ライブラリ
Pandasはデータテーブルを操作するのに使うライブラリです。
エクセルで皆様がやられているような「行」「列」ごとのデータ操作が出来ます。
Pythonでデータ分析をする際には、以下のようなステップを踏みます。
- Excelやcsvにまとまった元データをpandasでDataFrame化
- DataFrameをもとにデータ処理・加工
- 加工データを元に統計処理・機械学習などで分析
- 結果をexcelやcsvなどで出力
一連の処理すべてを、pandasというライブラリでデータ操作し進めます。

Python上でデータをエクセルのように触るためのものと思ってください。
Pandasの機能でセルを足したり引いたり、新しい列を作ったり消したりできます。
Numpy:セルの計算用ライブラリ
Numpyは行列計算に特化したライブラリです。
機械学習や統計処理では、データという「行」と「列」で表される「行列」に様々な加工を加えます。

細かくは数学的な話も絡んでくるので割愛します。
要するにPandasで作ったテーブルを元に「数理計算」するためのライブラリという理解をしてください。
Numpyライブラリの関数を使うことで、データから様々な計算ができます。
その計算結果が最後の統計処理や機械学習に役立ってくる というわけです。
scikit-learn:機械学習用のライブラリ
scikit-learnは、簡単に言えば「機械学習を行う」ライブラリです。
scikit-learnには予測モデルや機械学習モデルを呼び出せる多くの関数が詰まっています。
PandasやNumpyで加工したデータをscikit-learnで機械学習させる という使い方をします。

scikit-learnは本当にできることが幅広いので、これだけで本が出版されています。
scikit-learnを使える = 機械学習モデルを動かせる と思っていただいて問題ないです。
もちろん正確に動かすためには、知識と経験が必要です。
Pythonデータ分析を効率よく学ぶ4つのステップ
ここからは効率よくPythonデータ分析を習得するステップについて紹介していきます。
僕の体験談も踏まえながら紹介していきますね。

僕も新入社員として入社した当初は、Pythonをほぼ使ったことが有りませんでした。
そのため、本やサービスを上手く使って必要な知識を身に着けました。
自分に合ったものをうまく使って効率よく習得していきましょう。
ステップ1:Pythonを書くことに慣れる
習うより慣れろ!という言葉があります。
データ分析は本格的にやり始めると難しい内容が多く、挫折しがちです。
つまり、難しいことは置いておいて、まずは慣れてしまうのがベストな方法だと思います。
とはいえ、プログラムは開発環境を整えるのが一番難しいんです。
小難しいことはなしに、簡単にPythonを書いて動作確認ができるサービスがあればいいですよね。
そこでオススメできるのが「PyQ」というサービスです。

PyQはWeb上でPythonを書いて実行することで、Web上で手を動かしながらPythonを習得できるサービスです。
習得したいテーマごとにレジュメがまとまっており、体系的に技術習得が可能です。

月額3980円と決して安くはないのですが、内容ごとに問題がまとまっていて取り組みやすいです。
僕は興味のあるテーマだけ一気にやりきったらすぐに解約し次に進みました。
基本動作を身体で覚えるのにピッタリのサービスです。
ステップ2:Pythonデータ分析のフローを理解する
Pythonを触ることに慣れてきたら、次はデータ分析のフローを体験してみましょう。
費用を安く抑えたい方は、下記の本がオススメです。
データ分析100本ノックは、現場で起きる実際の課題を想定してストーリーが進んでいきます。
データを加工する段階から、OJT(現場研修)のような形で、分析を学ぶことが出来ます。

100本ノックという名前のとおり、100個のテーマに分かれています。
進捗管理もしやすく、現場の雰囲気を掴むのにもオススメです!
ステップ3:Pythonデータ分析にチャレンジする
Pythonの基本的な書き方と分析フローに慣れたら、いよいよ実際に分析をしていきましょう。
kaggleやSIGNATEといったコンペに参加して、実際にモデルを作るのが勉強になります。
僕は、この本で一連の流れを習得しました。
この本では、kaggleに参加して、予測結果を提出するまでの一連の動作を習得できます。

「Titanicの生存者予測」という有名なデータ分析コンペがあります。
こちらを題材に、簡単な分析から提出までを経験することが出来ます。
ステップ4:コンペで使える機械学習の技術を増やす
ここまでくれば、データ分析の流れとコンペへの参加方法は理解できていると思います。
コンペでいい成績を出すためには、色々な機械学習の技術やデータ加工の知識が必要になります。

僕は今、この段階にいます。
参加しているコンペで良い予測結果を出すために、日々勉強を重ねています。
ここでオススメしたいのが、下記の一冊です。
オライリー社は、様々な機械学習に関わる本を出版しています。
その中でも、このPythonで始める機械学習は、機械学習のモデルの特徴についてよくまとまっています。

この本がオススメなのは「数式メインでなく、実装メイン」であること。
現場で使うにあたっての注意点や特徴などを中心にまとめてあります。
Pythonで動作確認もできるので、機械学習の知識習得にぴったりです。
以降は力をつけてはコンペの分析モデルに実装し、トライアンドエラーを重ねるのみです!
一緒に頑張りましょう!
まとめ:Pythonでデータ分析を学ぶのに大切なこと
この記事では、Pythonを使ってデータ分析を始めるにあたってのステップとポイントをまとめました。
Python自体は、Web開発から機械学習まで何でも出来てしまう言語です。
そのため、目的に合ったライブラリの活用方法と経験を積むのが効率的だと思います。

Pythonは文法がとてもきれいに作られているので、書いていてスッキリします。
分析のみならず、他の目的に使うにも便利な言語だと思います。
この記事では参考書やWebサービスを中心に紹介していきましたが、最近はデータ分析に特化したプログラミングスクールもあります。
目的と予算を鑑みて厳選したものを記事にしていますので、もしよければチェックしてみてください。
-
-
Pythonでデータ分析を学べるプログラミングスクール4選
続きを見る
ahilogでは、初心者向けにデータのお仕事や働き方について紹介しています!
他記事もぜひチェックしてみてください。