Pythonでデータ分析を行う際に使われる「Pandas」ライブラリでは、表形式のデータを扱うための「DataFrame」がよく使われます。この記事では、DataFrameの列名(列ラベル)を取得する方法を、初心者の方でもわかりやすく解説します。
この記事でわかること
Pandasで列名を取得する基本
列名を取得するには、以下のように .columns
属性を使います。
import pandas as pd
# サンプルDataFrameを作成
df = pd.DataFrame([
[0, 1, 2],
[3, 4, 5]
])
# 列ラベルを出力
print(df.columns)
結果
RangeIndex(start=0, stop=3, step=1)
この場合、列名が明示されていないため、自動的に 0, 1, 2 という数字が列名(ラベル)として割り当てられています。
応用:列名をリスト形式で取得する
データ加工やforループ処理などに使いたい場合は、以下のように list()
を使って扱いやすくしましょう。
import pandas as pd
# サンプルDataFrameを作成
df = pd.DataFrame([
[0, 1, 2],
[3, 4, 5]
])
col_names = list(df.columns)
print(col_names)
結果
[0, 1, 2]
応用例:列名をループで処理する
たとえば、すべての列に対して列名を表示したい場合:
import pandas as pd
# サンプルDataFrameを作成
df = pd.DataFrame([
[0, 1, 2],
[3, 4, 5]
])
for col in df.columns:
print(f"列名:{col}")
これはデータの前処理や可視化、動的な処理を行う際に役立ちます。
結果
列名:0
列名:1
列名:2
カスタム列名の設定と取得
列名を自分で設定したい場合は columns
引数を使いましょう。
import pandas as pd
df = pd.DataFrame([
[0, 1, 2],
[3, 4, 5]
], columns=["A", "B", "C"])
print(df.columns)
結果
Index(['A', 'B', 'C'], dtype='object')
まとめ
やりたいこと | コード例 |
---|---|
列名の取得 | df.columns |
リスト形式で取得 | list(df.columns) |
ループ処理 | for col in df.columns: |
名前の設定 | columns=["A", "B", "C"] |