Pandas DataFrame内のすべての列名のリストを取得する
Pandas DataFrame内のすべての列名のリストを取得するには、次の2つのアプローチがあります。
最初のアを使用しています。
例
簡単な例から始めるには、3列のDataFrameを作成しましょう。
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )print (df)
上記のコードを実行すると、3列の次のDataFrameが表示されます:p>
list(df)を使用してPandas DataFrame内のすべての列名のリストを取得する
コードにmy_list=list(df)を追加することで、最初のアプローチを使用することができます。
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )my_list = list(df)print (my_list)
これで、3つの列名を含むリストが表示されます。
必要に応じて、コードの下部にprint(type(my_list))を追加す:次に、リストを取得したことを確認できます。
My_list=dfを使用します。列。値。tolist()Pandas DataFrame
すべての列名のリストを取得するには、my_list=dfを追加して2番目のアプローチを適用することもできます。列。値。これまでと同様に、列名を持つリストを取得します。
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )my_list = df.columns.values.tolist()print (my_list)print (type(my_list))
:P>
どのアプローチを選択する必要がありますか?必要に応じて、より高速なアプローチを使用する必要がある場合があります。では、どのアプローチが最も速いのですか?
timeitモジュールを使用して、各オプションの実行時間を確認してみましょう。
(1)my_list=list(df)の最初のアプローチの下で時間を測定します。
from timeit import default_timerimport pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )beginning = default_timer()my_list = list(df)ending = default_timer()print((ending - beginning)*1000)
Pythonでコードを実行すると、次の実行時間が得られました:
実行時間をよりよく理解するために、コードを数回実行することをお勧めします。(2)ここで、my_list=dfの2番目のアプローチで時間を測定してみましょう。列。値。tolist():
from timeit import default_timerimport pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )beginning = default_timer()my_list = df.columns.values.tolist()ending = default_timer()print((ending - beginning)*1000)
ご覧のように、第二のアプローチは、最初のアプローチと比較して実際に高速です。
実行時間は、Pandas/Pythonのバージョンおよび/またはマシンによって異なる場合があることに注意してください。