Lesen von Matlab Daten-Datei in Python, Müssen Sie Sie Exportieren in CSV
Habe ich gelesen, die eine Matlab-Datei mit einer großen Menge von arrays wie ein dataset in Python speichern Sie die Matlab-Wörterbuch unter dem Variablennamen mat
mit dem Befehl:
mat = loadmat('Sample Matlab Extract.mat')
Gibt es eine Möglichkeit, ich kann dann mit Python zu schreiben, um die csv-Funktionalität speichern Sie die Matlab-dictionary-variable lese ich in Python als eine Komma-separierte Datei?
with open('mycsvfile.csv','wb') as f:
w = csv.writer(f)
w.writerows(mat.items())
f.close()
erstellt eine CSV Datei mit einer Spalte mit array-Namen in das Wörterbuch und dann noch eine Spalte für das erste element des jeweiligen Arrays. Gibt es eine Möglichkeit, nutzen Sie einen Befehl wie diesen erhalten alle entsprechenden Elemente innerhalb des arrays innerhalb der " mat " - dictionary-variable?
- erwägen Sie die Verwendung im HDF5, z.B. siehe h5py und die entsprechenden matlab-Funktionen
- wie schlagen Sie vor, um zu speichern der verschiedenen Variablen in einer einzigen CSV-Datei?
- Ich hatte gehofft, es war eine Art zu schreiben, die alle Variablen und deren Werte in der Daten-matrix, wenn Sie, dass kann ich dann den import in IBM SPSS Modeler führen einige Analyse auf die Daten. Ich hatte gehofft, zu vermeiden, Durchlaufen die gesamte dictionary-variable, bis alle Variablen, die gelesen wurden, weil ich bin neu in Python und weiß, dass dies dauern würde, ein Verständnis von Logik, dass ich das Gefühl habe ich nicht in der Sprache. Aussehen wird, in das Verständnis im HDF5 und andere Anregungen würde sehr geschätzt werden. Danke!
- mit open('mycsvfile.csv','wb') as f: w = csv.writer(f) w.writerows(mat.Elemente()) gibt mir eine csv-Datei mit dem array-Variablen name und der erste Wert des Arrays, kennt jemand eine Möglichkeit mit einem Befehl ähnlich diesem an, um alle Werte aus den entsprechenden arrays in das Wörterbuch?
- Bearbeiten können Sie Ihre Frage an diese Informationen enthält?
- Nur so Tat, ich entschuldige mich
- Sie beachten,
mat
ist ein Wörterbuch..items()
gibt ein (Schlüssel, Wert) - paar. Für einen start, geben Sie uns eine Vorstellung von dem, wasvalue
Teil eines dieseritems
ist wie. Ich vermute, es ist ein `numpy.array'. Für einen start versuchen, zu schreiben, nur ein solches array. Sie können darum, Sie alle später. - Der Wert-Teil würde ich gerne pauschal mit der Schlüssel-name ist ein array von numerischen Werten, in Erster Linie schwimmt aber in manchen Fällen ganze zahlen als gut. Ich möchte, um diese zu importieren array-Namen und die entsprechenden Werte in SPSS Modeler für die Analyse. Ich kann Modeler zum importieren der Daten .mat-Datei, weil es nicht die Funktionalität zu tun, so dass Python einen Mittelweg, um die Daten in Modeler
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Funktion
scipy.io.loadmat
erzeugt ein Wörterbuch suchen so etwas wie dieses:Es klingt wie das, was Sie tun möchten, ist stellen Sie eine .csv-Datei mit den Tasten "a", "b", etc. wie die Spaltennamen und die entsprechenden arrays als Daten, die im Zusammenhang mit jeder Spalte. Wenn dem so ist, würde ich empfehlen, mit
pandas
um eine schön formatierte dataset exportiert werden können, um eine .csv-Datei. Erste, Sie brauchen, um sauber aus der Kommentar-Mitglieder von Ihrem Wörterbuch (alle Schlüssel, beginnend mit "__"). Dann wollen Sie um jeden Punkt Wert in Ihrem Wörterbuch in einepandas.Series
Objekt. Das Wörterbuch kann dann umgewandelt werden in einepandas.DataFrame
Objekt, das kann auch gespeichert werden .csv-Datei. Dein code würde dann so Aussehen:Dies ist die richtige Lösung für die Umwandlung .mat-Datei in .csv-Datei. Versuchen Sie es