Carregar ficheiro JSON em Pandas

  1. Carregar um ficheiro JSON em Pandas DataFrame
  2. Carregar um ficheiro JSON orientado para índice na Pandas DataFrame
  3. Carregar um ficheiro JSON orientado para colunas no DataFrame Pandas

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.

Artigo relacionado - Pandas DataFrame

  • Conte valores únicos por grupo(s) em Pandas
  • Aplicar uma função a múltiplas colunas em Pandas DataFrame