Obtener una Lista de todos los Nombres de Columna en Pandas DataFrame
Aquí hay dos enfoques para obtener una lista de todos los nombres de columna en Pandas DataFrame:
Primer enfoque:
my_list = list(df)
Segundo método:
my_list = df.columns.values.tolist()
más Tarde también verás qué enfoque es el más rápido de usar.
El ejemplo
Para comenzar con un ejemplo simple, vamos a crear un DataFrame con 3 columnas:
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )print (df)
Una vez que ejecute el código anterior, verá el siguiente DataFrame con las 3 columnas:
Usando list(df) para obtener la Lista de todos los Nombres de Columna en el marco de datos de Pandas
Puede usar el primer enfoque agregando my_list = list(df) al código:
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )my_list = list(df)print (my_list)
Ahora verá la Lista que contiene los 3 nombres de columna:
Opcionalmente, puede verificar rápidamente que obtuvo una lista agregando print (type(my_list)) a la parte inferior del código:
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))
Podrá confirmar que tiene una lista:
Alternativamente, puede aplicar el segundo enfoque agregando my_list = df.columna.valor.tolist() al código:
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))
Como antes, ahora obtendrá la lista con los nombres de columna:
¿Qué enfoque debe elegir?
Dependiendo de sus necesidades, es posible que necesite utilizar el enfoque más rápido.
Entonces, ¿qué enfoque es el más rápido?
Comprobemos el tiempo de ejecución de cada una de las opciones usando el módulo timeit:
(1) Midiendo el tiempo bajo el primer enfoque de 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)
Cuando ejecuté el código en Python, obtuve el siguiente tiempo de ejecución:
Es posible que desee ejecutar el código varias veces para tener una mejor idea del tiempo de ejecución.
(2) Ahora vamos a medir el tiempo bajo el segundo enfoque de my_list = df.columna.valor.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)
Como puede ver, el segundo enfoque es en realidad más rápido en comparación con el primer enfoque:
Tenga en cuenta que el tiempo de ejecución puede variar según su versión de Pandas/Python y/o su máquina.