hi,
kann mir jemand sagen was der schnellste weg ist eine Ascii datei als Float array einzulesen? Interessant währe hier das direkt beim einlesen der Datentyp flot ist so das ich später keine Typenwandlung mehr machen muss.
Danke im vorraus.
Float Array einlesen
Natürlich 
Also die Datei is eine 3 spaltige Werte Tabelle vom typ float. Diese möchte ich möglichst schnell einladen.
zzt benutze ich die standart Open() fuktion. Welche die Werte allerdings als String einläd, was für mich heißt ich muss sie später wandeln. Das kostet zeit.
Wie macht ihr sowas? Welche variante is eurer Erfahrung nach die schnellste um solche daten einzuladen und als float im Python vorliegen zu haben
Nein noch benutze ich kein Numpy. Welche funktion benutz du da speziell? kleines Beispiel?

Also die Datei is eine 3 spaltige Werte Tabelle vom typ float. Diese möchte ich möglichst schnell einladen.
zzt benutze ich die standart Open() fuktion. Welche die Werte allerdings als String einläd, was für mich heißt ich muss sie später wandeln. Das kostet zeit.
Wie macht ihr sowas? Welche variante is eurer Erfahrung nach die schnellste um solche daten einzuladen und als float im Python vorliegen zu haben
Nein noch benutze ich kein Numpy. Welche funktion benutz du da speziell? kleines Beispiel?
Eine Umwandlung musst du auf jeden Fall machen, wenn die Daten als Strings vorliegen. Ich würde die Datei einfach öffnen und dann so einlesen:
Ich bin davon ausgegangen, dass die Daten so vorliegen:
andernfalls muss das "split" ein wenig angepasst werden.
Ich bin mir relativ sicher, dass es mit numpy noch kürzer (vielleicht auch schneller) geht, da wird sich wahrscheinlich noch der ein oder andere melden.
Ach ja: und das.
Code: Alles auswählen
[map(float, line.split()) for line in fp.readlines()]
Code: Alles auswählen
1.0 2.0 4.0
3.0 6.0 9.0
Ich bin mir relativ sicher, dass es mit numpy noch kürzer (vielleicht auch schneller) geht, da wird sich wahrscheinlich noch der ein oder andere melden.
Ach ja: und das.

Das Leben ist wie ein Tennisball.