ホームページ > バックエンド開発 > Python チュートリアル > Pandas DataFrames の特定の列をプログラムで選択するにはどうすればよいですか?

Pandas DataFrames の特定の列をプログラムで選択するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-20 21:08:15
オリジナル
112 人が閲覧しました

How Do I Programmatically Select Specific Columns in Pandas DataFrames?

Pandas データフレームの特定の列をプログラム的に選択する

Pandas データフレームを操作する場合、さまざまな操作で列の特定のサブセットを選択する必要が生じます。この記事では、列選択のニュアンスを探り、以前の失敗した試行で遭遇した課題に対処します。

失敗したアプローチと落とし穴

文字列名に基づいて列をスライスする最初の試みdf['a':'b'] などの列名はそのようにスライス可能ではないため、失敗します。この落とし穴は、Pandas がその列にインデックスを付ける方法を理解することの重要性を強調しています。

列名による列の取得

名前で特定の列を取得するには、__getitem__ 構文を利用できます。希望する列のリスト付きnames:

df1 = df[['a', 'b']]
ログイン後にコピー

または、列に数値的にインデックスを付ける必要がある場合:

df1 = df.iloc[:, 0:2] # Note: Python slicing is exclusive of the last index.
ログイン後にコピー

ビューとコピーについて

です。 Pandas でビューとコピーを区別するために重要です。最初の方法ではスライスされた列の新しいコピーが作成され、2 番目の方法では元のオブジェクトと同じメモリを参照するビューが作成されます。この区別は、パフォーマンスとメモリ使用量に影響を与える可能性があります。

列選択の微妙な点

名前で列を指定し、iloc を利用するには、 columns 属性の get_loc 関数を利用できます。 :

column_dict = {df.columns.get_loc(c): c for idx, c in enumerate(df.columns)}

# Use the dictionary to access columns by name using iloc
df1 = df.iloc[:, [column_dict['a'], column_dict['b']]]
ログイン後にコピー

これらの微妙なニュアンスを理解することで、開発者は Pandas データフレームから列を効果的に選択し、対応できるようになります。データ分析および操作タスクの特定の要件に対応します。

以上がPandas DataFrames の特定の列をプログラムで選択するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート