[pandas] 4. DataFrameにおけるデータの選択(loc, iloc)

Pandas

はじめに

pandasのDataFrameでは、特定の行や列のデータを取得する方法としてloc属性とiloc属性が提供されています。これらの属性を使うことで、ラベル(インデックス名やカラム名)や位置(行番号や列番号)を指定してデータを柔軟に選択することができます。本記事では、locとilocの使い方と違いについて、具体的な例を交えて解説します。

解説

モジュールのインポート

DataFrameの生成

明示的なインデックスによる選択

インデクスが文字列の場合、カラム名によるデータの選択が可能となってます。

ファンシーインデックスによる選択

DataFrameに文字列のリストを適用することで、そのカラム名に該当する部分のデータを選択することができます。

locの使い方

DataFrame.locとすることで、インデックスまたはカラム名だけでデータを選択することになります。locでスライスした場合、pythonの一般的なスライスと異なり、終点のデータも含まれます。

ilocの使い方

DataFrame.ilocを使用すると、NumPy配列と同様のスライス操作が可能になります。また、ファンシーインデックスによる選択も行えます。

まとめ

本記事では、pandasのDataFrameにおけるデータ選択方法としてlocとilocの使い方を解説しました。locはラベルベースでインデックス名やカラム名を使って選択し、ilocは位置ベースで整数のインデックスを使用します。これらの選択メソッドをマスターすることで、大規模なデータセットからも効率的に必要なデータを抽出できるようになります。

参考

pandas.DataFrame.loc — pandas 2.3.2 documentation
pandas.DataFrame.iloc — pandas 2.3.2 documentation

コードをダウンロード(.pyファイル) コードをダウンロード(.ipynbファイル)

コメント