Pandas DataFrame 内のすべての列名のリストを取得するには、次の 2 つの方法があります。

(1) list(df) を使用する

my_list = list(df)

(2) df.columns.values.tolist() を使用する

my_list = df.columns.values.tolist()

簡単な例から始めるために、3 つの列を持つ DataFrame を作成しましょう。

import pandas as pd

data = {'Name': ['Bill', 'Maria', 'David', 'James', 'Mary'],
        'Age': [32, 45, 27, 59, 37],
        'Country': ['Spain', 'Canada', 'Brazil', 'UK', 'France']
        }

df = pd.DataFrame(data)

print(df)

上記のコードを実行すると、次の 3 つの列を持つ DataFrame が表示されます。

Pandas DataFrame のすべての列名のリストを取得する 1

list(df) の使用

コードに my_list = list(df) を追加することで、最初のアプローチを使用できます。

import pandas as pd

data = {'Name': ['Bill', 'Maria', 'David', 'James', 'Mary'],
        'Age': [32, 45, 27, 59, 37],
        'Country': ['Spain', 'Canada', 'Brazil', 'UK', 'France']
        }

df = pd.DataFrame(data)

my_list = list(df)

print(my_list)

3 つの列名を含むリストが表示されます。

Pandas DataFrame のすべての列名のリストを取得する 2

オプションとして、コードの末尾に print (type(my_list)) を追加することで、リストが取得されたことを簡単に確認できます。

import pandas as pd

data = {'Name': ['Bill', 'Maria', 'David', 'James', 'Mary'],
        'Age': [32, 45, 27, 59, 37],
        'Country': ['Spain', 'Canada', 'Brazil', 'UK', 'France']
        }

df = pd.DataFrame(data)

my_list = list(df)

print(my_list)
print(type(my_list))

次に、リストを取得したことを確認します。

Pandas DataFrame のすべての列名のリストを取得する 3

df.columns.values.tolist() の使用

あるいは、コードに my_list = df.columns.values.tolist() を追加して、2 番目のアプローチを適用することもできます。

import pandas as pd

data = {'Name': ['Bill', 'Maria', 'David', 'James', 'Mary'],
        'Age': [32, 45, 27, 59, 37],
        'Country': ['Spain', 'Canada', 'Brazil', 'UK', 'France']
        }

df = pd.DataFrame(data)

my_list = df.columns.values.tolist()

print(my_list)
print(type(my_list))

以前と同様に、列名のリストが表示されます。

Pandas DataFrame のすべての列名のリストを取得する 4