Como converter o Python Dictionary em Pandas DataFrame

  1. Método para converter o dicionário em Pandas DataFame
  2. Método para converter keys para serem as columns e os values para serem os row em Pandas DataFrame
  3. pandas.DataFrame().from_dict() Método para converter dict em DataFrame
Como converter o Python Dictionary em Pandas DataFrame

Apresentaremos o método para converter o dicionário Python para Pandas datafarme, e opções como ter chaves para serem as colunas e os valores para serem os valores de linha. Poderíamos também converter o dicionário aninhado para o DataFrame.

Introduziremos também outra abordagem utilizando pandas.DataFrame.from_dict, e encadearemos isto com qualquer método de renome para definir tanto o índice quanto os nomes das colunas de uma só vez.

Método para converter o dicionário em Pandas DataFame

Pandas DataFrame construtor pd.DataFrame() converte o dicionário em DataFrame se os itens do dicionário forem dados como argumento do construtor, mas não o dicionário em si.

# python 3.x import pandas as pd  fruit_dict = {3: "apple", 2: "banana", 6: "mango", 4: "apricot", 1: "kiwi", 8: "orange"}  print(pd.DataFrame(list(fruit_dict.items()), columns=["Quantity", "FruitName"])) 

As chaves e valores do dicionário são convertidas em duas colunas do DataFrame com os nomes das colunas dados nas opções colunas.

 Quantity FruitName 0 3 apple 1 2 banana 2 6 mango 3 4 apricot 4 1 kiwi 5 8 orange 

Método para converter keys para serem as columns e os values para serem os row em Pandas DataFrame

Podemos simplesmente colocar parênteses ao redor do dicionário e remover o nome da coluna do código acima desta forma:

import pandas as pd  fruit_dict = {1: "apple", 2: "banana", 3: "mango", 4: "apricot", 5: "kiwi", 6: "orange"}  print(pd.DataFrame([fruit_dict])) 

Resultado:

 1 2 3 4 5 6 0 apple banana mango apricot kiwi orange 

Vamos utilizar pandas compreensão do dicionário com cat para combinar todos os dicionários e depois passar a lista para dar novos nomes de colunas.

Considere o seguinte código,

import pandas as pd  data = {"1": {"apple": 11, "banana": 18}, "2": {"apple": 16, "banana": 12}} df = pd.concat({k: pd.Series(v) for k, v in data.items()}).reset_index() df.columns = ["dict_index", "name", "quantity"] print(df) 

Resultado:

 dict_index name quantity 0 1 apple 11 1 1 banana 18 2 2 apple 16 3 2 banana 12 

pandas.DataFrame().from_dict() Método para converter dict em DataFrame

Utilizaremos from_dict para converter dict em DataFrame, aqui definimos orient='index' para utilizar chaves de dicionário como linhas e aplicamos rename() método para mudar o nome da coluna.

Considere o seguinte código,

import pandas as pd  print(  pd.DataFrame.from_dict(  {"apple": 3, "banana": 5, "mango": 7, "apricot": 1, "kiwi": 8, "orange": 3},  orient="index",  ).rename(columns={0: "Qunatity"}) ) 

Resultado:

 Quantity apple 3 banana 5 mango 7 apricot 1 kiwi 8 orange 3 
Está gostando dos nossos tutoriais? Inscreva-se no DelftStack no YouTube para nos apoiar na criação de mais vídeos tutoriais de alta qualidade. Inscrever-se

Artigo relacionado - Pandas DataFrame