CSVファイルから特定の列だけを読み込む方法:pandas read_csvで列指定

はじめに

データ分析において、CSVファイルから必要な列だけを読み込むことは非常に重要です。全ての列を読み込んでから不必要な列を削除するといった処理は、メモリ消費や処理時間の面で非常に効率が悪いからです。

今回は、Pythonのデータ解析ライブラリであるpandasを用いて、CSVファイルから特定の列だけを読み込む方法について説明します。

read_csvの基本的な使い方とオプションの概要

pandasのread_csv関数は、CSVファイルを読み込むための関数です。最も基本的な使い方は、以下のようになります。

import pandas as pd
df = pd.read_csv('sample.csv')

この場合、現在のディレクトリにある’sample.csv’という名前のファイルを読み込んで、データフレームとしてdfに格納します。

read_csvには、以下のようなオプションがあります。

  • header: ヘッダーがある場合は、何行目にあるかを指定します。
  • sep: カンマ以外の区切り文字がある場合に指定します。
  • encoding: ファイルのエンコーディングを指定します。
  • dtype: 各列のデータ型を指定します。
  • usecols: 読み込む列を指定します。

特定の列だけを読み込む方法:usecolsパラメータの活用

usecolsオプションを用いると、読み込む列を指定することができます。列を指定する方法には、以下のような方法があります。

  • 列名を指定する方法
  • 列番号を指定する方法

列名を指定する場合は、以下のようにします。

import pandas as pd
df = pd.read_csv('sample.csv', usecols=['列名1', '列名2'])

列番号を指定する場合は、以下のようにします。

import pandas as pd
df = pd.read_csv('sample.csv', usecols=[0, 2, 4])

ここでは、列番号0, 2, 4の列だけを読み込みます。

また、列指定には、スライスを使用することもできます。たとえば、以下のように指定すると、1列目から3列目までの列を読み込みます。

import pandas as pd
df = pd.read_csv('sample.csv', usecols=range(1, 4))

読み込んだ列のデータ操作と保存方法

CSVファイルから読み込んだデータを操作する方法として、以下のような方法があります。

  • 列の選択
  • 列の追加
  • 列の削除
  • データのグループ化

これらの操作方法については、以下の記事にまとめていますので、興味がありましたら是非ご覧ください。

Pandasで複数行・複数列を効率的に取り出す(抽出する)方法

pandasで行・列を簡単に追加!データフレーム拡張の基本技術

pandasで行・列を簡単に削除!データフレーム整形のコツとポイント

pandasで複数列を使ったgroupby操作!

データを操作した後、結果をCSVファイルとして保存する場合は、to_csvメソッドを使用します。

import pandas as pd
df = pd.read_csv('sample.csv', usecols=['列名1', '列名2'])
# データ操作
df.to_csv('result.csv', index=False)

to_csvメソッドの引数に、保存するファイル名を指定しています。また、index=Falseを指定することで、行番号を保存しないようにしています。

まとめ:pandas read_csvで列指定を活用し効率的なデータ処理を行う方法

本稿では、pandasを用いてCSVファイルから特定の列だけを読み込む方法について説明しました。データ分析において、不必要な列を読み込まないことは非常に重要であり、効率的なデータ処理を行うためには、列指定を活用することが必要です。

また、データ操作や保存方法についても説明しました。これらの操作を組み合わせることで、より高度なデータ分析が可能となります。

以上で、CSVファイルから特定の列だけを読み込む方法についての説明を終わります。