So normalisieren Sie JSON von Pandas richtigPython

Python-Programme
Guest
 So normalisieren Sie JSON von Pandas richtig

Post by Guest »

Ich möchte eine JSON-Datei mit historischen Forex-Preisdaten von Pandas laden und Statistiken mit den Daten erstellen. Ich habe viele Themen zu Pandas und dem Parsen von JSON-Dateien durchgesehen. Ich möchte eine JSON-Datei mit zusätzlichem Wert und einer verschachtelten Liste an einen Pandas-Datenrahmen übergeben.
Ich habe eine JSON-Datei „EUR_JPY_H8.json“ erhalten
Zuerst importiere ich die erforderliche Bibliothek
import pandas as pd
import json
from pandas.io.json import json_normalize

Dann laden Sie die JSON-Datei,
with open('EUR_JPY_H8.json') as data_file:
data = json.load(data_file)

Ich habe unten eine Liste:
[{u'complete': True,
u'mid': {u'c': u'119.743',
u'h': u'119.891',
u'l': u'119.249',
u'o': u'119.341'},
u'time': u'1488319200.000000000',
u'volume': 14651},
{u'complete': True,
u'mid': {u'c': u'119.893',
u'h': u'119.954',
u'l': u'119.552',
u'o': u'119.738'},
u'time': u'1488348000.000000000',
u'volume': 10738},
{u'complete': True,
u'mid': {u'c': u'119.946',
u'h': u'120.221',
u'l': u'119.840',
u'o': u'119.888'},
u'time': u'1488376800.000000000',
u'volume': 10041}]

Dann übergebe ich die Liste an json_normalize. Versuchen Sie, den Preis zu ermitteln, der in der verschachtelten Liste unter „Mitte“ aufgeführt ist.
result = json_normalize(data,'time',['time','volume','complete',['mid','h'],['mid','l'],['mid','c'],['mid','o']])

Aber ich habe ein solches Ergebnis erhalten,
Image

Die 'Zeit'-Daten wurden Zeile für Zeile in jede Ganzzahl aufgeschlüsselt.
Ich habe das zugehörige Dokument überprüft. Ich muss einen String oder ein Listenobjekt an den 2. Parameter von json_normalize übergeben. Wie kann ich den Zeitstempel dort weitergeben, ohne abzustürzen?
Die Spalten meiner erwarteten Ausgabe sind:
index | time | volumn | completed | mid.h | mid.l | mid.c | mid.o

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post