python PR

【python】データ分析のためのpandasの使い方①:データフレームの作成

記事内に商品プロモーションを含む場合があります

PandasはPythonのデータ解析ライブラリであり、データサイエンスを行うためには絶対に必要になってきます。

この記事ではpandasを扱う為の第一歩、データフレームの作成方法を紹介します。
データ分析に必要なtipsをもれなくお伝えしますので、是非ハンズオンで実践してみてください。

「pandas」とは

Pandasはエクセルの様な表形式のデータを扱うのに長けており、データのフィルタリング、変換、操作、集約などを簡単に実行できます。
具体的には以下の様な特長をもっています。

  • データの読み込みと書き込みに対応しており、多くのファイル形式をサポートする。
  • メモリ上でのデータの処理を効率化するため、高速である。
  • 欠損値の処理やデータの集約など、多様なデータ操作に対応している。

対応しているファイル形式としては、CSV、Excel、JSONなど、多くのファイル形式をサポートしています。

つまり、

データ分析・機械学習を行うなら必須です!!

データフレームとシリーズとは?

覚えて欲しい事として、データフレームとシリーズがあります。

データフレームの特長

  • データフレームは、2次元の表形式のデータを扱うことができます。n×n行列。
  • 列ごとに異なるデータ型を持つことができます。
  • 2次元の操作(列選択、列の削除、列の追加、列の名前の変更、列のデータ型の変更、行選択、行の削除、行の追加など)を行うことができます。

データフレームはエクセルのテーブルをイメージすると分かりやすいと思います。

シリーズの特長

  • シリーズは、1次元の配列のような形式で、単一の列を扱います。
  • シリーズは、1つのデータ型しか持つことができません。

下記の様に、一次元の配列がシリーズです。

pandasの使い方

ではさっそくpandasの使い方をみていきましょう。
この記事ではハンズオンで学習する事を推奨していますので、是非皆さんの環境で実行してみてください。

サクッと試したい方は、google colaboratoryが簡単でおすすめです。

pandasのインストール

pandasを使うには、まずはインストールが必要です。
pipコマンドを使って、以下のようにインストールできます。

google colaboratoryの場合は特にインストールしなくても大丈夫です。

データの読み込みとデータフレームの作成

続いてデータを読み込んでデータフレームを作成してみましょう。
先ほども話したように、pandasではCSV、Excel、SQLなどの多くのデータ形式を扱うことができます。


まずお作法として、先頭行に「import pandas as pd」と書くようにしましょう。
こうする事でインポートしつつ、これ以降pandasを使う際はpdと書くだけで使える様になります。as以降でリネームしていますね。
ちなみにpdではなく、「as panda」など自分の好きな様に名前を付ける事もできますが、pdとするのが一般的です。

※今回はseabornにあるirisというデータセットを使っています。seabornに関しては別の記事で紹介します。

ちなみに各種ファイルから読みこむ際には、下記のように書きます。

filename’の所に対象のファイルのパスを入れれば大丈夫です。

また「df =~」とする事で、読み込んだファイルをdfの中に入れる事ができ、データフレームを作成する事ができます。

そして、print(df)と書く事で、↓のようにデータフレームの中を見る事ができます。

別の方法でデータフレームを作成する

データフレームの作成は、ファイルの読み込み以外にも以下の作成方法があります。

  • ndarrayから作成
  • dictionaryから作成

実務で使うシーンはファイル読み込みほどではありませんが、しっかりと押さえておきましょう。

ndarrayから作成

そもそもndarrayとは何かというと、

ndarrayとはNumPyパッケージで提供されるn次元配列(n-dimensional array)のことを指します。
ndarrayは、Pythonのリストやタプルとは異なり、同じデータ型の要素を格納することができ、多次元の場合でも高速な演算が可能です。

詳しくはNumPyの記事にて解説します。

まずは、numpyライブラリのインポートから始めましょう。
numpyはnpとするのが一般的です。

次にndarrayを作成します。ここでは、1~5の値が入るランダムな整数値を3×3の行列として作成しています。


array([[3, 1, 1],
          [5, 5, 3],
          [2, 2, 5]])

↑この様な行列が出来ると思います。
次はこのndarrayをデータフレームに変換しましょう。
pandasのDataFrameクラスを使用します。

こうする事で下記のデータフレームができます。

これだと行列名が分からないので使い辛いですね。そんな時は、行名(index)と列名(columns)をリストで渡してあげましょう。

こうする事で、↓のような小学生の通知表を作成できます。

dictionaryから作成

では続いてdictionary(辞書)からの作成方法を見ていきましょう。
個人的にはndarrayよりもdictionaryから作成する方が多いです。

まず、dictionaryを用意します。dictionaryは、キーと値のペアでデータを格納するデータ構造です。
pandasのデータフレームをdictionaryから作成する場合、dictionaryのキーがデータフレームの列名に、値がデータフレームの列の値に対応します。

列が複数になる場合はlistで与えてあげましょう。

実行結果は以下のようになります。

まとめ

今回はpandasの基礎、データフレームの作成方法を紹介しました。

作成方法としては、以下の3種類がありましたね。

  • ファイルから作成
  • ndarrayから作成
  • dictionaryから作成

データフレームの作成は必ず使いますので、必ず覚える様にしましょう~。

pythonの基礎を学びたい人は下記の記事をどうぞ。

「Pythonで始めるデータ分析:初心者のための完全ガイド」

あなたにおススメの記事