Python lage bord fra JSON

Python lage bord fra JSON
JSON eller JavaScript Object Notation er en av de mest populære datautvekslingsformatene. Det brukes ofte i APIer og NoSQL -databaser på grunn av dens enkelhet og lesbarhet.

Imidlertid er det ikke så greit når det gjelder å analysere JSON. I denne opplæringen vil vi derfor lære å konvertere en JSON -fil til en Pandas -tabell.

Eksempeldata

Det første trinnet er å ha JSON -dataene vi ønsker å analysere. Vi har valgt en enkel JSON -fil som inneholder astronomiinformasjon for en spesifikk by for denne opplæringen.

Eksempeldata er som vist:


"Land": "Storbritannia,"
"State": "England",
"City": "London",
"breddegrad": 51.466652350000004,
"lengdegrad": -0.09686637642617651,
"Dato": "2022-04-13",
"Current_time": "03:12:55.044 ",
"Sunrise": "06:09",
"Sunset": "19:53",
"Sun_status": "-",
"Solar_noon": "13:01",
"Day_length": "13:44",
"Sun_altitude": -23.19751117067553,
"Sun_distance": 1.4988500851835912E8,
"Sun_azimuth": 35.781559107335625,
"Moonrise": "15:43",
"Moonset": "05:28",
"Moon_status": "-",
"Moon_altitude": 20.615536932562232,
"Moon_distance": 387894.3437906608,
"Moon_azimuth": 266.5048405334666,
"moon_parallactic_angle": 34.5669393631715

Lagre JSON -filen som astronomy_simple.JSON

Les Json med Pandas

Vi vil bruke pandaer til å lese JSON -filen og konvertere den til en tabell.

Begynn med å importere pandaer:

# Importer pandaer
Importer pandaer som PD

Deretter vil vi lese JSON -filen ved hjelp av read_json -funksjonen. Dette lar oss konvertere en JSON -streng til et Pandas -objekt som vist:

pd_object = pd.read_json ('astronomy_simple.json ', typ =' serie ')

Når vi har fått JSON -filen konvertert til et Pandas -objekt, kan vi konvertere den til en Pandas DataFrame som vist:

df = pd.DataFrame (PD_Object)

Til slutt, for å skrive ut dataene i et tabellformat, bruk display -func som vist:

Display (DF)

Dette skulle komme tilbake:

Konklusjon

Denne korte artikkelen beskriver en enkel metode for å konvertere en JSON -fil til en tabell ved hjelp av pandaer.