Pandas で CSV ファイルやテキストファイルを読み込む

Last update: 2016-05-15

このページでは、CSV ファイルやテキストファイル (タブ区切りファイル, TSV ファイル) を読み込んで Pandas のデータフレームに変換する方法について説明します。

Pandas のファイルの読み込み関数

CSV ファイルのロード: read_csv()
Pandas には、CSV ファイルをロードする関数として、read_csv() メソッドが用意されています。

テキストファイルのロード: read_table()
テキストファイルなど、一般的な可変長のテキストファイルを読み込む関数として、read_table() メソッドが用意されています。

read_csv() メソッドの書式

read_table() メソッドの書式

read_csv()read_table() の違いは、区切り文字がカンマ (,)になっているか、タブ (\t) になっているかです。

主要な引数

read_csv()read_csv() 共通で利用可能な引数のうち、主要なものを紹介します。

filepath_or_buffer 読み込み元のファイルのパスや URL を指定。
sep 区切り文字。 (デフォルト: ‘,’ (read.csv) / ‘\t’ (read.table) )
delimiter sep の代わりに delimiter 引数でも区切り文字を指定可能。 (デフォルト: None)
header ヘッダ行の行数を整数で指定。 (デフォルト: ‘infer’)
names ヘッダ行をリストで指定。 (デフォルト: None)
index_col 行のインデックスに用いる列番号。 (デフォルト: None)
dtype 各行のデータタイプ。例: {‘a’: np.float64, ‘b’: np.int32}  (デフォルト: None)
skiprows 先頭から読み込みをスキップする行数。 (デフォルト: None)
skipfooter 末尾から読み込みをスキップする行数。 (デフォルト: None)
nrows 読み込む行数。 (デフォルト: None)
quotechar ダブルクォーテーションなどでクオートされている場合のクオート文字。 (デフォルト: ‘”‘)
escapechar エスケープされている場合のエスケープ文字。 (デフォルト: None)
comment コメント行の行頭文字を指定。指定した文字で始まる行は無視されます。 (デフォルト: None)
encoding 文字コード。’utf-8′, ‘shift_jis’, ‘euc_jp’ などを指定。参考: Python の文字コードの一覧 (デフォルト: None)

CSV ファイル / テキストファイル の読み込み例 (ローカルファイル)

事前に用意したファイルを読み込むには、Pythonファイルと同じフォルダにファイルを配置し、ファイル名を直接指定します。

データが手元にない場合は、以下からサンプルデータをダウンロード可能です。

サンプルデータ (sample_dataset.csv)
sample_dataset_csv

サンプルデータ (sample_dataset.txt)
sample_dataset_txt

コードの例


CSV ファイル / テキストファイルの読み込み例 (URL を指定)

インターネット上に配置されたファイルを読み込むことも可能です。本例では、当サイトにアップロード済みのCSV ファイルやテキストファイルを読み込みます。

参考:
pandas.read_table — pandas 0.18.1 documentation
pandas.read_csv — pandas 0.18.1 documentation

See also