Seite 1 von 1
numpy.loadtxt()
Verfasst: Freitag 23. April 2010, 20:04
von basti!
Hallo zusammen,
ich möchte ein Programm schreiben das mir Mittelwerte aus Wetterdaten ausgibt. Die Wetterdaten sind von 5 Städten in 5 verschiedenen dat Dateien. Die Dateien lade ich mit dem Befehl
numpy.loadtxt("Berlin.dat","München.dat",.....)
Das gespeicherte Programm ist im selben Ordner wie die 5 Dateien jedoch gibt er mir immer einen Fehler aus und sagt no such file or directory Berlin.dat, München.dat,..... .
Kann mir jmd sagen warum er die Dateien nicht erkennt?? Was muss ich anders machen.
Danke für eure Antworten
Verfasst: Freitag 23. April 2010, 21:19
von gkuhl
Es wäre gut, wenn du die komplette Fehlermeldung posten würdest. ``loadtxt`` funktioniert so wie du es verwenden willst auch nicht. Schau nochmal in den Docstring.
Grüße
Gerrit
Verfasst: Freitag 23. April 2010, 21:23
von basti!
Code: Alles auswählen
IOError: [Errno 2] No such file or directory: 'Berlin.dat'
Danke für die Antwort. Kannst du mir sagen wie ich es dann machen muss??
Bin absoluter Neuling

,kenne mich nicht so gut aus.
Verfasst: Freitag 23. April 2010, 21:26
von gkuhl
basti! hat geschrieben:Kannst du mir sagen wie ich es dann machen muss??
Du Dokumentation von ``loadtxt`` lesen und vielleicht mal etwas Quelltext zeigen.
Verfasst: Freitag 23. April 2010, 21:33
von basti!
Wie lese ich die Dokumentation?? Wie gesagt absoluter neuling.
Den Rest bekomme ich hin aber ich verstehe nicht wiese er die Datei nicht erkennt.Muss ich einen anderen Befehl nehmen? oder meine Datei umbenennen?
Verfasst: Freitag 23. April 2010, 21:42
von gkuhl
Wieso das nicht klappt, kann dir ohne deinen Quelltext vermutlich keiner sagen. Auf jeden Fall scheinst du aber ``loadtxt`` falsch zu benutzen.
Die Dokumentationen findest du hier:
-
Python Dokumentation
-
NumPy Dokumentation
In der Python Doku gibt's auch ein Tutorial, das du dir mal anschauen solltest. Da steht dann z.B. das man aus dem Python Interpreter die ``help``-Funktion verwenden kann:
Verfasst: Freitag 23. April 2010, 22:16
von basti!
Den Quelltext hab ich angeschaut.Danke noch dafür.Habe aber nichts gefunden was mir weiterhilft.
Ich hab jetzt mal alles weg und nur die ersten 2 Zeilen und noch ein print dazu um zu schauen ob es geht.
Jetzt bringt er folgende Fehlermeldung:
Code: Alles auswählen
raise ValueError('fname must be a string or file handle')
ValueError: fname must be a string or file handle
Aber ein Ausschnitt der datei sieht wie folgt aus:
Code: Alles auswählen
1 1 3 3 -2.2 87 2.7 206 0
1 1 4 4 -2.4 88 3.0 206 0
1 1 5 5 -2.6 89 2.9 206 0
1 1 6 6 -2.4 88 3.2 206 0
1 1 7 7 -2.7 90 2.7 206 0
Das sind doch Strings.
Das Programm ( die 3 Zeilen) ist dieses:
Code: Alles auswählen
import numpy as np
werte = np.loadtxt(("Berlin", "Frankfurt", "Hamburg", "Koeln" ,"Muenchen"),usecols=(4,8),skiprows=4,unpack=True)
print werte
Verfasst: Freitag 23. April 2010, 22:20
von gkuhl
Die Fehlermeldung ist doch recht eindeutig: ``fname`` muss ein String sein. Was ist ``fname`` bei dir?
Verfasst: Freitag 23. April 2010, 22:25
von basti!
Achso, okay.
Und wie kann ich dann den Inhalt der Städtedateien mit diesem Befehl aufrufen?
Wie müsste meine Zeile dann lauten?
Verfasst: Freitag 23. April 2010, 23:24
von gkuhl
So:
Code: Alles auswählen
loadtxt(fname, dtype=<type 'float'>, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False)
Verfasst: Freitag 23. April 2010, 23:59
von basti!
Habs hinbekommen, waren mehrere Dateien im Ordner und das hat er durcheinandergebracht.
Danke trotzdem für die Hilfe