【Python】pandasで列番号や列名を取得(カラム名)する方法【.columns.values:get_loc:変換】 | ウルトラフリーダム

【Python】pandasで列番号や列名を取得(カラム名)する方法【.columns.values:get_loc:変換】

本サイトでは記事内に広告が含まれています。

この記事ではpythonのpandasを用いて、データフレームから列番号や列名(カラム名)を取得する方法について解説していきます。

ポイントとしては、

・列番号(カラム番号)の取得: .columnsやcolumns.values

・列名(カラム名)の取得:.columns.get_loc

を使うことです。

詳しく見ていきましょう!

 

スポンサーリンク

Pandasにて列名を取得する方法【列番号から:.columns】

PythonのPandasにて列名を取得する方法(列番号より)を確認していきます。

具体的には、データフレームの`.columns` プロパティを使用するといいです。

columns[0]が最初の列(1列目)を意味していることに注意しましょう。

import pandas as pd

# サンプルデータフレームの作成
df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6],
    'C': [7, 8, 9]
})

# 列名の取得
retsu_name = df.columns[0]
print(retsu_name)

2.実行画面(jupyter notebook)は以下の通りです。1列目の名前のAが出力できました(^^)/

 

Pandasにて複数の列名を取得する方法【.columns.values】

複数の列名を取得したい場合、リストのスライシングを利用します。

以下では最初から2行目までの列名を取得してみましょう。

なお、複数列名はリストとして取得する場合が多く、このケースでは.columns.valuesを使用しましょう。

# 複数の列名の取得
fuku_columns = df.columns.values[:2]
print(fuku_columns)

これで2列目までの複数の列名をリストとして取得できました。

a

 

 

Pandasにて列番号を取得する方法【列名から】

逆に、Pandasにて列名から列番号を取得するには、`.columns.get_loc`メソッドを使用します。

# 列名から列番号の取得
retsu_number = df.columns.get_loc('B')
print(retsu_number)

この列番号も0から始める(つまり1列目は0、2列目が1・・・となる)ことに気を付けましょう。

 

 

Pandasにて複数の列番号を取得する方法【列名からの変更】

複数の列名からその列番号を取得する場合、リスト内包表記を活用します。

# 複数の列名から列番号の取得
column_numbers = [df.columns.get_loc(col) for col in ['A', 'B']]
print(column_numbers)

 

 

まとめ pandasで列番号や列名を取得する方法【.columns.values:get_loc:変換】

ここでは、pandasで列番号や列名を取得する方法【.columns.values:get_loc:変換】について解説しました。

これらの方法を使って、データフレームの列に対して様々な操作を行うことができます。

特に大きなデータフレームを取り扱う際には、列名や列番号を効率よく取得・操作する技術は非常に役立ちますので、ぜひマスターしてください。

コメント

タイトルとURLをコピーしました