Ich versuche, einen Pandas-Datenrahmen aus einer .npy-Datei zu machen, die, wenn sie mit np.load eingelesen wird, ein numpy-Array mit einem Wörterbuch zurückgibt. Mein erster Instinkt war, das Wörterbuch zu extrahieren und dann einen Datenrahmen mit pd.from_dict zu erstellen, aber das scheitert jedes Mal, weil ich nicht das Wörterbuch aus dem Array, das von np.load zurückgegeben wurde, zu bekommen scheint. Es sieht so aus, als wäre es nur np.array ([dictionary, dtype = object]), aber ich kann das Wörterbuch nicht durch Indexieren des Arrays oder so etwas erhalten. Ich habe auch versucht, np.load ('filename'). Item() zu verwenden, aber das Ergebnis wird immer noch nicht von Pandas als Wörterbuch erkannt.Erstellen eines Pandas-Datenrahmens aus einer .npy-Datei
Alternativ habe ich versucht pd.read_pickle und das hat auch nicht funktioniert.
Wie kann ich dieses .npy-Wörterbuch in meinen Dataframe bekommen? Hier ist der Code, andernfalls hält ...
import pandas as pd
import numpy as np
import os
targetdir = '../test_dir/'
filenames = []
successful = []
unsuccessful = []
for dirs, subdirs, files in os.walk(targetdir):
for name in files:
filenames.append(name)
path_to_use = os.path.join(dirs, name)
if path_to_use.endswith('.npy'):
try:
file_dict = np.load(path_to_use).item()
df = pd.from_dict(file_dict)
#df = pd.read_pickle(path_to_use)
successful.append(path_to_use)
except:
unsuccessful.append(path_to_use)
continue
print str(len(successful)) + " files were loaded successfully!"
print "The following files were not loaded:"
for item in unsuccessful:
print item + "\n"
print df
Wie haben Sie die '.npy' Datei erstellt? ist es mit 'np.save()' – Grainier
Es wurde mir nur leider gegeben. Mir wurde gesagt, dass ich mit np.load das bekommen könnte, was ich brauchte. – Arnold
Sollte es nicht 'pd.DataFrame.from_dict' statt' pd.from_dict' sein? Zumindest in "Pandas 0.18.1" existiert letzteres nicht. Wie auch immer, sind Sie sicher, dass das Problem mit der '.npy' Datei auftritt? Ich kann Wörterbücher mit 'np.save' und' np.load' erfolgreich speichern und laden. Könnten Sie Details über 'file_dict' sowie die Fehlermeldungen posten? –