ホームページ >バックエンド開発 >Python チュートリアル >Pandas における Loc と Iloc: スライスにそれぞれをいつ使用する必要がありますか?

Pandas における Loc と Iloc: スライスにそれぞれをいつ使用する必要がありますか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-24 10:41:28163ブラウズ

Loc vs. Iloc in Pandas: When Should I Use Each for Slicing?

Pandas での Loc と Iloc のスライス

Loc と iloc は、Pandas で一般的に使用される 2 つのスライス方法であり、行とデータフレームからの列。ただし、その微妙な違いを理解すると混乱する可能性があります。

主な違い: ラベルと場所

loc と iloc の主な違いは、使用するインデックスの種類にあります。 :

  • Loc: で動作しますラベル、具体的にはインデックスまたは列ラベルの実際の値。
  • Iloc: 整数の位置を操作し、行または列の位置を表します。の列DataFrame.

例:

非単調整数の DataFrame を考えます。 Index:

df = pd.DataFrame({
    'a': [1, 2, 3],
    'b': [4, 5, 6],
    'c': [7, 8, 9]
}, index=[0, 2, 4])

Loc:

  • df.loc[0] は、位置に関係なく、インデックス ラベル 0 の行にアクセスします。
  • df.loc[0:1] は、インデックス ラベル 0 と 0 を持つ行を取得します。 1.

Iloc:

  • df.iloc[0] は、インデックス ラベルに関係なく、インデックス位置 0 の行を取得します。
  • df.iloc[0:1] はインデックスの場所を次のように指定しているため、最初の行のみにアクセスします。 integers.

使用上の主な違い:

Feature Loc Iloc
Indexing Labels Integer locations
Slicing Inclusive (by default) Exclusive (by default)
Out-of-bounds behavior KeyError IndexError
Negative indexing Supported Supported for final row only
Boolean masking NotImplementedError Supports boolean mask
Callable indexing Function applied to index Function applied to row or column

Loc と Iloc を使用する場合:

  • 必要な場合は loc を使用してください特定の名前やカテゴリなどのラベルに基づいてインデックスを作成します。
  • 整数ベースのインデックス付け、特に開始点と終了点が明確なスライス操作の場合は、iloc を推奨します。
  • は避けてください。 iloc ブール値のマスキング操作または論理に基づくインデックス作成条件。

以上がPandas における Loc と Iloc: スライスにそれぞれをいつ使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。