Få En Liste over Alle Kolonnenavn i Pandas DataFrame
Her er to tilnærminger for å få en liste over alle kolonnenavn i Pandas DataFrame:
Første tilnærming:
my_list = list(df)
Andre tilnærming:
my_list = df.columns.values.tolist()
senere vil du også se hvilken tilnærming Er Den Raskeste å bruke.
Eksemplet
for å starte med et enkelt eksempel, la oss lage En DataFrame med 3 kolonner:
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )print (df)
når du kjører koden ovenfor, vil du se Følgende DataFrame med 3 kolonner:
Bruke list(df) For Å Få Listen over Alle Kolonnenavn i Pandas DataFrame
du kan bruke den første tilnærmingen ved å legge my_list = list(df) til koden:
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )my_list = list(df)print (my_list)
du vil nå se listen som inneholder de 3 kolonnenavn:
Eventuelt Kan Du raskt bekrefte at du fikk en liste ved å legge Print (type(my_list)) til bunnen av koden:
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )my_list = list(df)print (my_list)print (type(my_list))
du vil da kunne bekrefte at du har en liste:
Ved hjelp av my_list = df.kolonne.verdier.tolist () For Å Få Listen over Alle Kolonnenavn i Pandas DataFrame
Alternativt kan du bruke den andre tilnærmingen ved å legge til my_list = df.kolonne.verdier.tolist () til koden:
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))
som før får du nå listen med kolonnenavnene:
Hvilken tilnærming bør du velge?
Avhengig av dine behov, kan du kreve å bruke raskere tilnærming.
så hvilken tilnærming er den raskeste?
la oss sjekke utførelsestiden for hver av alternativene ved hjelp av timeit-modulen:
(1) Måle tiden under den første tilnærmingen til 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)
da jeg kjørte koden i Python, fikk jeg følgende utførelsestid:
du kan ønske å kjøre koden noen ganger for å få en bedre følelse av kjøretiden.
(2) la Oss nå måle tiden under den andre tilnærmingen til my_list = df.kolonne.verdier.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)
som du kan se, er den andre tilnærmingen faktisk raskere i forhold til den første tilnærmingen:
Merk at kjøretiden kan variere avhengig Av Pandas / Python-versjonen og / eller maskinen din.