numpy/scipy/ipython:Fehler beim interpretieren der Datei als eine Gurke
Habe ich die Datei im folgenden format:
0,0.104553357966
1,0.213014562052
2,0.280656379048
3,0.0654249076288
4,0.312223429689
5,0.0959008911106
6,0.114207780917
7,0.105294501195
8,0.0900673766572
9,0.23941317105
10,0.0598239513149
11,0.541701803956
12,0.093929580526
Möchte ich zur Handlung diesen Punkt mit ipython plot-Funktion wie folgt:
In [40]: mean_data = load("/Users/daydreamer/data/mean")
Aber es nicht sagen, die folgenden:
---------------------------------------------------------------------------
IOError Traceback (most recent call last)
/Users/daydreamer/<ipython-input-40-8f1329559411> in <module>()
----> 1 mean_data = load("/Users/daydreamer/data/mean")
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy-1.6.1-py2.7-macosx-10.5-fat3.egg/numpy/lib/npyio.pyc in load(file, mmap_mode)
354 except:
355 raise IOError, \
--> 356 "Failed to interpret file %s as a pickle" % repr(file)
357 finally:
358 if own_fid:
IOError: Failed to interpret file '/Users/daydreamer/data/mean' as a pickle
Wie behebe ich diesen Fehler?
numpy.load
ist nicht für das laden von ascii-Daten. Es ist für die be-numpy internen binären format oder eine eingelegte numpy-array. Sie möchtennumpy.loadtxt
odernumpy.genfromtxt
(letzteres behandelt fehlende Werte)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
numpy.Last
routine für das laden eingelegter.npy
oder.npz
Binär-Dateien, die erstellt werden können mitnumpy.save
undnumpy.savez
, beziehungsweise. Da haben Sie text-Daten, diese sind nicht die Routinen, die Sie möchten.Können Sie laden Sie Ihre Komma-getrennte Werte mit
numpy.loadtxt
.Vollständiges Beispiel
Hier ist ein komplettes Beispiel (mit
StringIO
zu simulieren, die Datei-I/O).Nun haben wir:
.npy
oder.npz
Binär-Dateien.