Obter uma Lista de todos os Nomes de Coluna em Pandas DataFrame
Aqui estão duas abordagens para obter uma lista de todos os nomes de coluna em Pandas DataFrame:
a Primeira abordagem:
my_list = list(df)
Segunda abordagem:
my_list = df.columns.values.tolist()
Depois você vai ver também qual abordagem é a mais rápida de usar.
Exemplo
Para começar com um exemplo simples, vamos criar uma DataFrame com 3 colunas:
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )print (df)
uma Vez que você executar o código acima, você verá a seguinte DataFrame com 3 colunas:
Usando a lista(df) para Obter a Lista de todos os Nomes de Coluna em Pandas DataFrame
Você pode usar a primeira abordagem adicionando my_list = lista(df) para o código:
import pandas as pddata = {'First_Name': , 'Last_Name': , 'Age': }df = pd.DataFrame(data, columns = )my_list = list(df)print (my_list)
agora Você vai ver a Lista que contém os 3 nomes de coluna:
Opcionalmente, você pode verificar rapidamente se de que você tem uma lista adicionando print (type(my_list)) para a parte inferior do código de:
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))
em seguida, Você será capaz de confirmar que você tem uma lista:
Alternativamente, você pode aplicar a segunda abordagem adicionando my_list = df.coluna.valores.tolist() to the code:
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))
As before, you’ll now get the list with the column names:
que abordagem deve escolher?
dependendo das suas necessidades, você pode precisar de usar a abordagem mais rápida.qual é a abordagem mais rápida?
Vamos verificar o tempo de execução para cada uma das opções utilizando o módulo timeit:
(1) Medindo-se o tempo em que a primeira abordagem de my_list = lista(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)
Quando eu executei o código em Python, eu tenho o seguinte tempo de execução:
pode desejar executar o Código algumas vezes para ter uma melhor noção do tempo de execução.
(2) Agora vamos medir o tempo sob a segunda abordagem de my_list = df.coluna.valores.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 você pode ver, a segunda abordagem é realmente mais rápido em comparação com a primeira abordagem:
Note que o tempo de execução pode variar dependendo da sua Pandas/versão do Python e/ou de sua máquina.