HOWTO · Pandas

Carregar ficheiro JSON em Pandas

Este tutorial explica como podemos carregar um ficheiro JSON em Pandas DataFrame usando o método pandas.read_json().

Nesta página

Este tutorial explica como podemos carregar um ficheiro JSON em Pandas DataFrame utilizando o método pandas.read_json().

Carregar um ficheiro JSON em Pandas DataFrame

Podemos carregar o ficheiro JSON em Pandas DataFrame utilizando a função pandas.read_json() passando o caminho do ficheiro JSON como parâmetro para a função pandas.read_json().

{
    "Name": {"1": "Anil", "2": "Biraj", "3": "Apil", "4": "Kapil"},
    "Age": {"1": 23, "2": 25, "3": 28, "4": 30},
}

O conteúdo do ficheiro de exemplo data.json é mostrado acima. Iremos criar um DataFrame a partir do ficheiro JSON acima.

import pandas as pd

df = pd.read_json("data.json")

print("DataFrame generated using JSON file:")
print(df)

Resultado:

DataFrame generated using JSON file:
    Name  Age
1   Anil   23
2  Biraj   25
3   Apil   28
4  Kapil   30

Mostra o DataFrame gerado a partir dos dados do ficheiro data.json. Temos de nos certificar de que temos o ficheiro data.json no nosso directório de trabalho actual para gerar o DataFrame; caso contrário, precisamos de fornecer o caminho completo do ficheiro JSON como argumento para o método pandas.read_json().

O DataFrame formado a partir do ficheiro JSON depende da orientação do ficheiro JSON. Temos três orientações diferentes do ficheiro JSON em geral.

  • Orientação do índice
  • Orientado para o valor
  • Orientado para a Coluna

Carregar um ficheiro JSON orientado para índice na Pandas DataFrame

{
    "0": {"Name": "Anil", "Age": 23},
    "1": {"Name": "Biraj", "Age": 25},
    "2": {"Name": "Apil", "Age": 26},
}

É um exemplo de um ficheiro JSON orientado para índices onde as teclas de nível superior representam os índices dos dados.

import pandas as pd

df = pd.read_json("data.json")

print("DataFrame generated from Index Oriented JSON file:")
print(df)

Resultado:

DataFrame generated from Index Oriented JSON file:
         0      1     2
Name  Anil  Biraj  Apil
Age     23     25    26

Irá criar um DataFrame a partir do ficheiro data.json com chaves de nível superior representadas como colunas no DataFrame.

Carregar um ficheiro JSON orientado para valores no DataFrame de Pandas

[["Anil", 23], ["Biraj", 25], ["Apil", 26]]

É um exemplo de um ficheiro JSON orientado para valores onde cada elemento do array representa os valores de cada linha.

import pandas as pd

df = pd.read_json("data.json")

print("DataFrame generated from Value Oriented JSON file:")
print(df)

Resultado:

DataFrame generated from Value Oriented JSON file:
       0   1
0   Anil  23
1  Biraj  25
2   Apil  26

Irá criar um DataFrame a partir do ficheiro data.json onde cada elemento do array no ficheiro JSON será representado como uma linha no DataFrame.

Carregar um ficheiro JSON orientado para colunas no DataFrame Pandas

{"Name": {"1": "Anil", "2": "Biraj", "3": "Apil"}, "Age": {"1": 23, "2": 25, "3": 28}}

É um exemplo de um índice de nível superior do ficheiro JSON orientado para a coluna que representa o nome da coluna para os dados.

import pandas as pd

df = pd.read_json("data.json")

print("DataFrame generated from  Column Oriented JSON file:")
print(df)

Resultado:

DataFrame generated from Column Oriented JSON file:
    Name  Age
1   Anil   23
2  Biraj   25
3   Apil   28

Irá criar um DataFrame a partir do ficheiro data.json onde a chave de nível superior do ficheiro JSON será representada como o nome da coluna no DataFrame.