Daten Import < Mathematica < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 10:34 Sa 05.05.2012 | Autor: | belle |
Aufgabe | Den Teilbereich einer Datei importieren |
Will aus einer sehr großen Datei-Tabelle einen Bereich importieren.
Die Felder sind Semikolon getrennt.
Da die Datei sehr groß ist - es ist eine txt-Tabelle mit 15 Feldern (Spalten), numerische und Text, mit 1 Milliarde Zeilen (records) - sollen, können und brauchen nicht alle Daten zur gleichen Zeit eingelesen werden.
Sondern nur ein Ausschnitt aus den Daten. Z.B. sollen die records Nr. 10 bis Nr. 100 eingelesen werden.
Mit ReadList liest man den Datensatz 1 bis n (Bei meiner Mathematica Version 6.0), aber wie von n bis m?
Oder kann es mit Take und Import gehen?
|
|
|
|
Hallo belle,
mir ist keine Funktion bekannt, die von Datensatz a bis Satz b liest. Also muss man das Rad wohl mal wieder erfinden. Der Kern der Funktion, die Du im Anhang findest, öffnet die Datei, liest (start-1) Datensätze direkt ins Datennirwana liest dann die gewünschte Anzahl von Datensätzen und schließt die Datei wieder. Fehlerbehandlung ist so gut wie nicht vorhanden - .
Gruß,
Peter
|
|
|
|
|
Status: |
(Frage) überfällig | Datum: | 08:58 Fr 01.06.2012 | Autor: | belle |
Aufgabe | Ein SubArray aus einer großen externen txt-Datei importieren |
Im Mathematica Documentation Center steht bei READ:
Read[stream,{{Number,Number},{Number,Number}}] reads a 2*2 matrix,
going through each column, then each row.
Meine Datei hat 10.000.000 Records und fünf Words per Record.
Zuerst einen Stream öffnen: StreamRead.
Dann mit Skip bis Record 9.999.900
Wie aber beim importieren jetzt ein SubArray einlesen?
Ab Record 9.999.901 sollen 50 Records und nur die Spalten zwei, drei
und vier aus dem Stream isoliert und gelesen werden.
Die Datei kommt in zwei Varianten.
- Words getrennt durch Delimiter, (WordSeparators)
- Words getrennt durch eine feste Breite jeder Spalte
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 09:20 Di 05.06.2012 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|