PythonのPandasでのカラム名の取得について

Python,イメージ

AI実装検定のご案内

Python の Pandas でカラム名を取得する方法はいくつかあり、用途に応じて使い分けられます。

ここでは、基礎から応用まで丁寧に解説します。

目次

基本的なカラム名の取得

Pandas の DataFrame には、カラム名をまとめた columns 属性があります。

import pandas as pd

# サンプルの DataFrame
df = pd.DataFrame({
    "name": ["Alice", "Bob", "Charlie"],
    "age": [25, 30, 35],
    "city": ["Tokyo", "Osaka", "Nagoya"]
})

# カラム名を確認
print(df.columns)

ここで返ってくるのは Index オブジェクトです。

リストではありませんが、リストと似たように扱えます。

リスト形式でカラム名を取得する

処理の中で使いやすいように、カラム名をリストに変換するのが一般的です。

col_list = df.columns.tolist()
print(col_list)

tolist() を使えば、Index からシンプルな Python のリストになります。

特定のカラム名を取得する

位置を指定して取り出すこともできます。

# 最初のカラム名
print(df.columns[0])   # -> 'name'

# 2番目のカラム名
print(df.columns[1])   # -> 'age'

for ループでカラム名を順番に処理

カラムごとに処理したいときはループが便利です。

for col in df.columns:
    print(col)

カラム名の検索や条件抽出

正規表現や条件を使ってカラム名を絞り込むことも可能です。

# 'a' を含むカラム名だけ抽出
cols_with_a = [c for c in df.columns if "a" in c]
print(cols_with_a)

カラム名を扱う実用例

カラムのリネーム

df.rename(columns={"name": "full_name"}, inplace=True)
print(df.head())

カラムの存在チェック

if "age" in df.columns:
    print("age カラムは存在します")

応用テクニック

  • ソートして取得 sorted_cols = sorted(df.columns.tolist()) print(sorted_cols)
  • カラム数を取得 num_cols = len(df.columns) print(f"カラム数: {num_cols}")
  • 列のデータ型とセットで確認 print(df.dtypes)

まとめ

  • 基本df.columnsIndex オブジェクトが得られる
  • リストで使いたいdf.columns.tolist()
  • 個別に取りたいdf.columns[i]
  • 応用 → ループ、条件抽出、リネーム、存在確認など

以上、PythonのPandasでのカラム名の取得についてでした。

最後までお読みいただき、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次