Pythonのデータ解析支援ライブラリPandas 〜その1 CSVデータの読み込み〜

スポンサーリンク

データ解析支援ライブラリPandas

前にデータ解析支援ライブラリPandasを使ってグラフ表示をする方法を解説しました。

Pythonのデータ解析支援ライブラリPandasを使ったグラフ表示の方法
データ解析支援ライブラリPandas前回、ランダムなデータファイルを作るプログラムを作成してみました。今回はそのプログラムで作成したデータをデータ解析支援ライブラリPandasを使って読み込み、グラフ表示してみたい...

Pandasはまだまだ色んな解析ができるライブラリなので、今回から何回かに分けて、その解説をしていきたいと思います。

使用するデータはこちらのダミーデータを作成するプログラムで作成します。

Pythonでファイル数、行数、列数を指定してダミーデータのファイルを生成するプログラムを作ってみた
ランダムデータのファイルが欲しい!前にjunney様より「グラフタイトルをファイル名としたい」というご質問を頂き、答えてみました。ただどうやら他にもプログラムが動いていない部分があるようで、再度ご質問を頂きました。...

とりあえず10列10行の0から99までのランダムな数字を使ったファイルを一つ作成しておきます。

ということでこんな感じ。

同じデータを使いたい方はこちらからダウンロードしてください。

Anacondaを使っている方は、最初からPandasがインストールされているので、インポートすれば使用できます。

import pandas as pd

Pandasはよく「pd」としてインポートされるので、上記のように「as pd」と最後につけておきます。

それでは色々いじっていきましょう。

スポンサーリンク

CSVデータの読み込み:pd.read_csv()

CSVデータを読み込むには、「pd.read_csv(“ファイル名”)」を用います。

import pandas as pd

df = pd.read_csv("python-pandas-2_data.txt")

print(df)

実行結果
  dataname  value_1  value_2  value_3  value_4  value_5
0   data_1       10       37       99       28       84
1   data_2       14       79       53        1       47
2   data_3       19       20       37       89       92
3   data_4       42       33       97       42       96
4   data_5       88       41       24       39       48
5   data_6        6       78       99       21       41
6   data_7        0       29       45       80       88
7   data_8       67        8       65       46       35
8   data_9       71        0       84       42       52
9  data_10       62       99       22       27        3

考え方としてはファイルを読み込む際と同じです。

Pythonでcsv、tsvの扱い方 〜ファイルの作成&読み書き〜
csv、tsvとは?csv、tsvとはファイル形式のことで、それぞれComma-Separated Values、Tab-Separated Valueの略になります。日本語でいうと、カンマで分けた値とタブで分けた値といっ...

つまりpf.read_csv(“ファイル名”)で読み込んだファイルを変数dfに格納しているということです。

ちなみにdfとはDataFrame(データフレーム)の略です。

データの形式としては、データの中の最初の行が自動的にヘッダーになります。

インデックスは自動で番号が振られます。

ヘッダーもインデックスも指定できるのですが、先に表示方法を解説します。

スポンサーリンク

データテーブル(表)の表示

先ほどCSVデータを読み込み、表示する際にprint(df)としました。

ですが実はPandasでデータテーブル(表のこと)を表示するには、print関数はいらず、ただCSVファイルを格納した変数(今回の場合は「df」)をタイプするだけです。

import pandas as pd

df = pd.read_csv("python-pandas-2_data.txt")

df

実行結果

単に変数名をタイプするだけでこれだけ綺麗な表が作られるのは、ちょっとびっくりですね。

今回はデータ全部を表示していますが、行や列を指定して表示することもできるので、次回細かく解説したいと思います。

スポンサーリンク

CSVファイルを読み込む際のヘッダーの指定の方法:header

それでは先ほどのCSVファイルを読み込む時に、ヘッダーを指定する方法を解説していきます。

df.read_csv()のオプションとして、header=”ヘッダー行”として指定します。

まずは「header=0」を試してみます。

import pandas as pd

df = pd.read_csv("python-pandas-2_data.txt", header=0)

df

実行結果

先ほどの指定しなかった場合と同じ表になりました。

つまりヘッダーに関しては「0」がデフォルトということになります。

つぎに「header=1」 を試してみます。

import pandas as pd

df = pd.read_csv("python-pandas-2_data.txt", header=1)

df

data_1の行がヘッダー行に変わりました。

しかし最初の行がヘッダー行ではなく、いきなりデータから始まっている場合もあることでしょう。

その場合は「header=None」とすることで、ヘッダー行がなしという指定も可能です。

import pandas as pd

df = pd.read_csv("python-pandas-2_data.txt", header=None)

df

実行結果

「header=None」とした場合、ヘッダーには自動で番号が振られるようです。

スポンサーリンク

CSVファイルを読み込む際のインデックスの指定の方法:index_col

次にインデックスの指定方法を解説していきます。

インデックスを指定するにはread_csv()のオプションとして、index_col=” インデックス行”とします。

こちらもまずは「index_col=0」を試してみましょう。

import pandas as pd

df = pd.read_csv("python-pandas-2_data.txt", index_col=0)

df

実行結果

先ほどインデックス列を指定していない場合は、一番左に数字が自動で振られていました。

「index_col = 0」とすると、一番最初の列である「dataname」の列がインデックス列になりました。

今回はまずはPandasの基本ということで、データの読み込みを解説してみました。

読み込みに関しては、コマンドは変わるものの基本的に普通にCSVファイルを読み込むのと変わらないかなという感じです。

ですがPandasが威力を発揮するのはここからです。

次回はデータの表示方法を解説していきます。

Pythonのデータ解析支援ライブラリPandas 〜その2 行を指定して取得〜
データ解析支援ライブラリPandas前回、データ解析支援ライブラリPandasを使って、CSVファイルの読み込み方法を解説しました。今回は読み込んだデータを表示する方法を解説していきます。まずは前回のおさら...

ということで今回はこんな感じで。

コメント

タイトルとURLをコピーしました