Ich habe eine Reihe von URLs mit JSON-Dateien und einem leeren Pandas-Datenframe mit Spalten, die die Attribute der JSNON-Dateien darstellen. Nicht alle JSON-Dateien haben alle Attribute im Pandas-Datenrahmen. Was ich tun muss, ist Wörterbücher aus den JSON-Dateien zu erstellen und dann jedes Wörterbuch als neue Zeile an den Pandas-Datenrahmen anzuhängen, und falls die JSON-Datei kein Attribut hat, das einer Spalte im Datenrahmen entspricht, muss dies sein gefüllt leer.Wie hängt man ein Wörterbuch an einen Pandas-Datenrahmen an?
habe ich es geschafft Wörterbücher zu erstellen, wie:
import urllib2
import json
url = "https://cws01.worldstores.co.uk/api/product.php?product_sku=ULST:7BIS01CF"
data = urllib2.urlopen(url).read()
data = json.loads(data)
und dann habe ich versucht, für Schleife zu erzeugen, wie folgt:
row = -1
for i in links:
row = row + 1
data = urllib2.urlopen(str(i)).read()
data = json.loads(data)
for key in data.keys():
for column in df.columns:
if str(column) == str(key):
df.loc[[str(column)],row] = data[str(key)]
else:
df.loc[[str(column)],row] = None
wo df die Datenrahmen und Links ist
der Satz von Urls istIch erhalte jedoch den folgenden Fehler:
raise KeyError('%s not in index' % objarr[mask])
KeyError: "['2_seater_depth_mm'] not in index"
wo [ '2_seater_depth_mm']
es gibt mir diese Fehlermeldung: other = np.array (andere, dtype = 'i8') Valueerror: invalid für lange wörtliche() mit Basis 10: '2015.05.28 16.31.19' –
In meinem Code habe ich df mit 'dtype = 'str' definiert. Bei einem Fehler gehe ich davon aus, dass einige Spalten Spalten sind, also kann man dort keinen Text speichern. Versuchen Sie, df-Spalten als str zu definieren und nach dem Laden von Daten mit Typen zu manipulieren. – zuku