No Python, uma estrutura de dados chamada dicionário é usada para armazenar informações como pares de valor-chave. Objetos de dicionário são otimizados para extrair dados/valores quando a chave ou as chaves são conhecidas. Para encontrar valores com eficiência usando o índice relacionado, podemos converter uma série Pandas ou DataFrame com um índice relevante em um objeto de dicionário com pares de valor de chave "Index: Valor". Para realizar esta tarefa, o método "to_dict ()" pode ser usado. Esta função é uma função embutida encontrada na classe da série do módulo pandas.
Um DataFrame é convertido em um dicionário de dados do tipo Python List, usando os pandas.Método to_dict (), dependendo do valor especificado do parâmetro Orient.”
Usaremos o método to_dict () em pandas. Podemos orientar os pares de valor-chave do dicionário retornado de várias maneiras usando a função to_dict (). A sintaxe da função é a seguinte:
Sintaxe:
Pandas.Dataframe_object.to_dict (Orient = "Dict", em =)
Parâmetros:
Tipo de retorno:
Dicionário convertido de um DataFrame ou série.
Dados:
Em todos os exemplos, usaremos o seguinte quadro de dados chamado "Comentários" que mantêm 2 linhas e 4 colunas. Aqui os rótulos da coluna são - ['id', 'nome', 'status', 'taxa'].
Importar pandas
# Crie o DataFrame usando listas
Observações = pandas.DataFrame ([[23, 'Sravan', 'Pass', 1000],
[21, 'Sravan', 'Fail', 400],
], colunas = ['id', 'nome', 'status', 'taxa']))
# Exiba o DataFrame - Comentários
Impressão (comentários)
Saída:
Taxa de status do nome da identidade
0 23 Sravan Pass 1000
1 21 Sravan Fail 400
Exemplo 1: to_dict () sem parâmetros
Converteremos as observações DataFrame em um dicionário sem passar nenhum parâmetros para o método to_dict ().
Importar pandas
# Crie o DataFrame usando listas
Observações = pandas.DataFrame ([[23, 'Sravan', 'Pass', 1000],
[21, 'Sravan', 'Fail', 400],
], colunas = ['id', 'nome', 'status', 'taxa']))
# Converter para o dicionário
Impressão (Comentários.to_dict ())
Saída:
'id': 0: 23, 1: 21, 'nome': 0: 'sravan', 1: 'sravan', 'status': 0: 'pass', 1: 'falha' , 'Fee': 0: 1000, 1: 400
Explicação
O DataFrame é convertido em um dicionário.
Aqui, as colunas no quadro de dados originais foram convertidas como chaves em um dicionário e cada coluna armazenará dois valores novamente em um formato de dicionário. As chaves para esses valores começam de 0.
Exemplo 2: to_dict () com 'série'
Converteremos as observações DataFrame em um dicionário em formato de série, passando o parâmetro 'Série' para o método to_dict ().
Formatar:
Importar pandas
# Crie o DataFrame usando listas
Observações = pandas.DataFrame ([[23, 'Sravan', 'Pass', 1000],
[21, 'Sravan', 'Fail', 400],
], colunas = ['id', 'nome', 'status', 'taxa']))
# Converter em dicionário com série de valores
Impressão (Comentários.to_dict ('série'))
Saída:
'id': 0 23
1 21
Nome: ID, Dtype: Int64, 'Nome': 0 Sravan
1 Sravan
Nome: Nome, Dtype: Objeto, 'Status': 0 Pass
1 falha
Nome: Status, dtype: objeto, 'taxa': 0 1000
1 400
Nome: Taxa, Dtype: Int64
Explicação
O DataFrame é convertido em um dicionário com formato 'série'.
Aqui, as colunas no quadro de dados originais foram convertidas como chaves em um dicionário e cada coluna armazenará linhas junto com o tipo de dados da coluna. O tipo de dados da coluna 'ID' é INT64 e outras duas colunas são 'objeto'.
Exemplo 3: to_dict () com 'divisão'
Se você deseja separar os rótulos da linha, os rótulos da coluna e os valores no dicionário convertido, poderá usar o parâmetro 'dividido'. Aqui, a chave 'Index' armazenará uma lista de etiquetas de índice. A chave 'Colunas' manterá uma lista de nomes e dados de colunas é uma lista aninhada que armazena cada valores de linha em uma lista separada por uma vírgula.
Formatar:
Importar pandas
# Crie o DataFrame usando listas
Observações = pandas.DataFrame ([[23, 'Sravan', 'Pass', 1000],
[21, 'Sravan', 'Fail', 400],
], colunas = ['id', 'nome', 'status', 'taxa']))
# Converta em dicionário sem índice e cabeçalho
Impressão (Comentários.to_dict ('split'))
Saída:
'index': [0, 1], 'colunas': ['id', 'nome', 'status', 'taxa'], 'dados': [[23, 'sravan', 'passa', 1000 ], [21, 'Sravan', 'Fail', 400]]
Explicação
Podemos ver que dois índices foram armazenados em uma lista como um valor para a chave - 'índice'. Da mesma forma, os nomes das colunas também são armazenados em uma lista como um valor para a chave - 'colunas' e cada linha é armazenada como uma lista em uma lista aninhada para os 'dados'.
Exemplo 4: to_dict () com 'registro'
Se você converter seu quadro de dados em um dicionário com cada linha como um dicionário em uma lista, poderá usar o parâmetro de registro no método to_dict (). Aqui, cada linha é colocada em um dicionário, de modo que a chave seja o nome e o valor da coluna é o valor real no quadro de dados de pandas. Todas as linhas foram armazenadas em uma lista.
Formatar:
Importar pandas
# Crie o DataFrame usando listas
Observações = pandas.DataFrame ([[23, 'Sravan', 'Pass', 1000],
[21, 'Sravan', 'Fail', 400],
], colunas = ['id', 'nome', 'status', 'taxa']))
# Converter em dicionário por registro
Impressão (Comentários.to_dict ('registro'))
Saída:
['id': 23, 'nome': 'sravan', 'status': 'passa', 'taxa': 1000, 'id': 21, 'nome': 'sravan', 'status': 'Fail', 'Fee': 400]
Exemplo 5: to_dict () com 'índice'
Aqui, cada linha é colocada em um dicionário como um valor para a chave começa de 0. Todas as linhas foram armazenadas novamente em um dicionário.
Formatar:
Importar pandas
# Crie o DataFrame usando listas
Observações = pandas.DataFrame ([[23, 'Sravan', 'Pass', 1000],
[21, 'Sravan', 'Fail', 400],
], colunas = ['id', 'nome', 'status', 'taxa']))
# Converta em dicionário com índice
Impressão (Comentários.to_dict ('index'))
Saída:
[0: 'id': 23, 'nome': 'sravan', 'status': 'passa', 'taxa': 1000, 1: 'id': 21, 'nome': 'sravan' , 'Status': 'Fail', 'Fee': 400
Exemplo 6: OrderedDict ()
Vamos utilizar o parâmetro 'para' que levará Ordenddict, que converte o quadro de dados de pandas em um dicionário ordenado.
Importar pandas
De Coleções Importar *
# Crie o DataFrame usando listas
Observações = pandas.DataFrame ([[23, 'Sravan', 'Pass', 1000],
[21, 'Sravan', 'Fail', 400],
], colunas = ['id', 'nome', 'status', 'taxa']))
# Converta para ordenardict
Impressão (Comentários.to_dict (em = ordereddict))
Saída:
OrdedDict ([('ID', OrdeDDict ([(0, 23), (1, 21))), ('Nome', OrderedDict ([(0, 'Sravan'), (1, 'Sravan']]] )), ('status', ordenddict ([(0, 'pass'), (1, 'falha'))), ('taxa', ordenddict ([(0, 1000), (1, 400)] )))
Conclusão
Discutimos como podemos converter os objetos DataFrame ou Pandas em um dicionário de Python. Vimos a sintaxe da função to_dict () para entender os parâmetros desta função e como você pode modificar a saída da função especificando a função com diferentes parâmetros. Nos exemplos deste tutorial, usamos o método to_dict (), uma função de pandas embutida, para alterar os objetos de pandas para o dicionário de Python.