Pandas: como converter rapidamente uma coluna em uma lista


Você pode usar um dos seguintes métodos para converter uma coluna de um DataFrame do pandas em uma lista:

Método 1: use tolist()

 df[' my_column ']. tolist ()

Método 2: use lista()

 list(df[' my_column '])

Ambos os métodos retornarão exatamente o mesmo resultado.

Os exemplos a seguir mostram como usar cada um desses métodos com o seguinte DataFrame do pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B'],
                   ' points ': [99, 90, 93, 86, 88, 82],
                   ' assists ': [33, 28, 31, 39, 34, 30]})

#view DataFrame
print (df)

  team points assists
0 to 99 33
1 A 90 28
2 A 93 31
3 B 86 39
4 B 88 34
5 B 82 30

Método 1: converter uma coluna em uma lista usando tolist()

O código a seguir mostra como usar a função tolist() para converter a coluna “pontos” do DataFrame em uma lista:

 #convert column to list
my_list = df[' points ']. tolist ()

#view list
print (my_list)

[99, 90, 93, 86, 88, 82]

Podemos confirmar que o resultado é uma lista usando a função type() :

 #check datatype
type (my_list)

list

Método 2: converter uma coluna em uma lista usando list()

O código a seguir mostra como usar a função list() para converter a coluna “pontos” do DataFrame em uma lista:

 #convert column to list
my_list = list(df[' points '])
#view list
print (my_list)

[99, 90, 93, 86, 88, 82]

Podemos confirmar que o resultado é uma lista usando a função type() :

 #check data type
type (my_list)

list

Observe que ambos os métodos retornam exatamente os mesmos resultados.

Observe que para DataFrames extremamente grandes, o método tolist() tende a ser o mais rápido.

Recursos adicionais

Os tutoriais a seguir explicam como executar outras funções comuns com as colunas de um DataFrame do pandas:

Como deletar colunas no Pandas
Como excluir colunas no Pandas
Como aplicar uma função a colunas selecionadas no Pandas
Como alterar a ordem das colunas no Pandas DataFrame

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *