こんにちは!
近年データ分析ができるプログラミング言語として、Pythonが注目されていますね。
「データ分析やってみたい!」と思っている方も多いのではないでしょうか。
同時に、始めるときは何をどのようにして始めればいいのかが気になるものです。
今回は、Pythonを扱う環境をインストールするところから、簡単なデータ操作をしていくまでを紹介していこうと思います!
Anacondaをインストール
Python自体はVS Codeなどでも開発可能ですが、今回はAnacondaというソフトウェアをインストールしましょう。
Pythonは、Python自体をインストールした後、使用するライブラリを別途インストールしていく必要があります。
AnacondaからPythonをインストールすると、よく使用されるライブラリもまとめてインストールしてくれるのです。なので、初心者がPythonでプログラミングを始めようとしている方におすすめです^^
↓↓以下のサイトからダウンロードできます!
https://www.anaconda.com/products/individual
↓↓インストールの説明は以下から
https://www.python.jp/install/anaconda/index.html
Anacondaで使える開発環境
Anacondaをインストールすると、スタートメニューからAnaconda3を開くことができると思います。
Anacondaでは、2種類の開発環境でプログラムを書くことができます。
Jupyter Notebook
Jupyter Notebookは、ブラウザ上で動作する開発環境です。プログラムを小分けに実行できることが特徴で、こまめに実行結果を確認することができます。
データ分析であれば、グラフなどの出力結果を見ながら、調整したりできる点が便利です。
Spyder
科学用途向けの統合開発環境です。統合開発環境とは、プログラミングしやすいように整えられた環境ということです。一般プログラミングとしてイメージされる画面はSpyderのほうだと思います。
ここまでで、データ分析を行う環境は一応整いました。JupyterとSpyderでどちらがいいとかは特にありません。扱いやすいほうを使ってプログラムを書いていきましょう。
データ分析に必要なライブラリ3選
Pythonを扱ううえで必須なのがライブラリです。Pythonには様々なライブラリが用意されています。これを上手く扱うことで、プログラミングが楽になります。
ここからは、データ分析で最初に必要なライブラリを3つ簡単な使用例と共にご紹介します!
今回は、Jupyter Notebookを使って紹介していきます
pandas
データを扱ううえで欠かせないライブラリがPandasです。
Pythonでは、行列データ(Excelのように、行と列があるデータ)を、DataFrameという形式で保持します。このDataFrameを扱えるようにするライブラリがPandasです。
pdというのは、pandasの省略形です。インポートするときに
import pandas as pd
とありますが、as 〇〇 で、そのライブラリを
「今後は〇〇と記述するよ」
と宣言しているのです。
ちなみに、pandasはpdと省略することが一般的なので覚えておいてください^^
今回は、データ分析用に公開されているデータセットを使用しています。図にあるプログラムを丸写しすれば同じようなDataFrameが表示されるはずです。是非やってみてください!
ちなみに、このデータはボストンの住宅価格に関するデータセットです。
Pandasでは、各列の統計量などを計算することができます。
dfという変数の後ろに.(ドット)で続いてmean()とかstd()とか書いてます。
これらはメソッドと呼ばれる関数です。これらを呼び出すことで、dfに対してやりたい処理を実現することができます。
pandasでは、その外にもデータの抽出や追加、計算など様々なことができます。
numpy
numpyは、数値計算を効率的に行うためのライブラリです。
Pythonは動的型付け言語なので、いちいち変数の型を宣言しません。このため、Javaなど毎回型宣言を行う言語(静的型付け言語)と比較して、処理時間が長くなってしまいます。
それを解決するためのライブラリがnumpyです。
numpyが提供するndarrayという型付きの多次元配列オブジェクトを用いることで、上記の問題を解決してくれます。
また、計算や配列を操作する関数が多数用意されているので、容易にデータを扱うことができます。
ここまで読んで、難しいと感じた方は、少し複雑な計算をするときはnumpyを使うんだなと思ってください^^;
numpyでデータを扱う場合は、DataFrameではなく、配列で扱います。先ほどのdataFrameを、配列に変換してみましょう。
上図のDataFrameと、下側のarray内は、同じデータ構造です。
また、npというのはnumpyの省略形です。
少しわかりづらいかもしれませんが、arrayは多次元配列の形をしています。[] が二重になっていますが、内側の[ ] がDataFrameの1行分のデータを示しています。
numpyでも統計量の計算ができるのでやってみましょう。
このように、配列として結果が出力されます。要素の1つ目から、1列目の結果、2列目の結果、、というようになっています。
axis=0というのが、列ごとに計算するという意味です。これを1にすると、行ごとに計算してくれます。
numpyでは、こういった統計量以外にも、ベクトルや行列の計算といったことができます。
matplotlib
matplotlibは、グラフを描画するためのライブラリです。数字のデータだけを眺めてデータ分析を行うのはなかなか大変です。
データをグラフにすることで、データの全体像の把握が容易になり、また、議論の際の資料としても提示しやすくなります。
matplotlibを使えば、そういったことが可能になります。
matplotlibでは、様々な種類のグラフを描画することができます。見たい情報に応じて、必要なグラフを描いていきましょう。
試しに、散布図を描いてみます。
今回のimportは、これまでとやや違いますが気にしないでください。
pltはまたまた省略形です。
今回は、DataFremeの1列分すべてのデータをxとyという変数に入れています。
そして、たった1行 “plt.scatter” と書くだけで、散布図が描けてしまうのです。
これを転用すれば、
同様に、ヒストグラムが描けます。
このように、非常に簡単にグラフを描画できるのがmatplotlibの強みです。
まとめ
Anacondaの導入と、データ分析に必要なPythonライブラリの紹介をしてきました。
ここまでできれば、データ分析者としてのスタートを切ったも同然。これからいろいろ試して、分析スキルを磨いていきましょう^^
今後もPythonでデータ分析に使える情報を更新していこうと思うので、是非ご覧になってください!
ではでは👋