このページでは、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ファイルと同じフォルダにファイルを配置し、ファイル名を直接指定します。
データが手元にない場合は、以下からサンプルデータをダウンロード可能です。
コードの例
コードの例 (日本語を含むファイルを読み込む例)
日本語や韓国語、中国語などのマルチバイト文字を含むファイルを読み込む場合は、引数に encoding="<文字コード>"
を指定することで正しく文字化けしない状態で読み込むことができます。Python で使える文字コードの一覧は 7.2.3. Standard Encodings にあります。
CSV ファイル / テキストファイルの読み込み例 (URL を指定)
インターネット上に配置されたファイルを読み込むことも可能です。本例では、当サイトにアップロード済みのCSV ファイルやテキストファイルを読み込みます。
参考:
pandas.read_table — pandas 0.18.1 documentation
pandas.read_csv — pandas 0.18.1 documentation