Pandas DataFrames での列の選択: トラブルシューティング ガイド
Pandas データフレームを使用する場合、特定の列の選択は基本的なタスクです。ただし、df['a':'b'] や df.ix[:, 'a':'b'] のような構文を使用してこれを達成しようとすると、列名を文字列としてスライスできないため、障害が発生する可能性があります。
オプション 1: 明示的な列の選択
特定の列を名前で選択するには、解決策はリストを渡すことです。列名の列を __getitem__ 構文に追加します:
df1 = df[['a', 'b']]
この方法では、必要な列のみのビューが作成されます。
オプション 2: 数値列の選択
列を数値的にインデックス付けすることが望ましい場合、iloc 関数は次のようにすることができます。採用:
df1 = df.iloc[:, 0:2]
Python のインデックス作成では終了インデックスが除外されることに注意してください。
コピーとビュー
の違いを理解することが重要です。 Pandas オブジェクトのビューとコピー。デフォルトでは、最初のメソッドはコピーを作成し、2 番目のメソッドは元のオブジェクトと同じメモリ位置を参照するビューを返します。 2 番目の方法を使用してコピーを取得するには、.copy() メソッドを使用します。
df1 = df.iloc[0, 0:2].copy()
列インデックスの利用
iloc を使用して名前で列にアクセスするには、列インデックスは get_loc 関数を使用して取得できます:
column_indices = {df.columns.get_loc(c): c for idx, c in enumerate(df.columns)} df1 = df.iloc[:, [column_indices['a'], column_indices['b']]]
以上がPandas DataFrame で列を正しく選択するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。