Kap egy listát az összes oszlop nevét Pandas DataFrame
íme két megközelítés, hogy egy listát az összes oszlop nevét Pandas DataFrame:
első megközelítés:
my_list = list(df)
második megközelítés:
my_list = df.columns.values.tolist()
később azt is látni, hogy melyik megközelítés a leggyorsabb használni.
A példa
egy egyszerű példával kezdve hozzunk létre egy 3 oszlopos Adatkeretet:
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )print (df)
a fenti kód futtatása után a következő adatkeret jelenik meg a 3 oszloppal:
A lista(df), hogy a lista az összes oszlop nevét Pandas DataFrame
használhatja az első megközelítés hozzáadásával my_list = list(df) a kódot:
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )my_list = list(df)print (my_list)
most megjelenik a 3 oszlopnevet tartalmazó lista:
opcionálisan gyorsan ellenőrizheti, hogy van-e listája, Ha a kód aljára Print (type(my_list)) parancsot ad:
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))
ezután megerősítheti, hogy van egy listája:
A my_list = df használatával.oszlopok.értékek.tolist() a Pandas DataFrame összes Oszlopnevének listájához
Alternatív megoldásként alkalmazhatja a második megközelítést a my_list = df hozzáadásával.oszlopok.értékek.tolist() a kódhoz:
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))
mint korábban, most megkapja a listát az oszlopnevekkel:
melyik megközelítést érdemes választani?
igényeitől függően előfordulhat, hogy a gyorsabb megközelítést kell alkalmaznia.
tehát melyik megközelítés a leggyorsabb?
ellenőrizzük az egyes opciók végrehajtási idejét a timeit modul segítségével:
(1) Az idő mérése a my_list = list(df) első megközelítése alatt:
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)
amikor a kódot futtattam Pythonban, a következő végrehajtási időt kaptam:
érdemes néhányszor futtatni a kódot, hogy jobban megértsük a végrehajtási időt.
(2) most mérjük meg az időt a my_list = df második megközelítése alatt.oszlopok.értékek.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)
mint látható, a második megközelítés valójában gyorsabb az első megközelítéshez képest:
vegye figyelembe, hogy a végrehajtási idő a Pandas/Python verziótól és/vagy a géptől függően változhat.