|
|
.csv-Datei importieren und in Matrix schreiben |
|
mat1 |

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 16.11.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.11.2008, 20:22
Titel: .csv-Datei importieren und in Matrix schreiben
|
 |
|
 |
|
Hallo zusammen,
ich habe ein für Matlab-Kenner recht einfaches Problem. Auch wenn schon häufig ähnliche Fragen gestellt wurden, habe ich für mein Problem nicht die passende Antwort gefunden.
Ich habe ein .csv-File mit Messdaten, das ich in Matlab importieren möchte. Wenn ich mir das File in Excel anschaue, besteht das File nur aus einer Spalte (A) und mehreren tausend Zeilen, wobei jede Zeile bestimmte Daten komagetrennt beinhaltet.
Die ersten beiden Zeilen bestehen aus den (kommagetrennten) Kenngrößen und zugehörigen Einheiten, die restlichen Zeilen aus den (kommagetrennten) Werten, die aber nicht nur numerisch sind, sondern auch Zeichen wie z.B. / beim Datum beinhalten.
Hier als Beispiel die beiden ersten Zeilen und eine Zeile mit Werten:
Datum,Zeit,Spannung,Strom,Leistung
,[s],[V],[A][W]
10/07/2008,34.4,10.2,3.0,30.6
Ich möchte diese Daten einfach nur ohne Firlefanz in eine Matrix zur weiteren Verwendung einlesen, mehr nicht. Ich habe schon alle möglichen Befehle wie csvread (geht nicht, weil nicht nur num. Werte beinhaltet sind) oder dlmread und wie sie alle heißen ausprobiert und bin aber gescheitert (wahrscheinlich, weil ich sie nicht richtig angewendet habe).
Es wäre einfach sensationell, wenn mir da jemand helfen könnte. Vielen Dank schonmal im Vorraus.
|
|
|
|
|
Lim |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.11.2008, 21:03
Titel: Re: .csv-Datei importieren und in Matrix schreiben
|
 |
|
 |
|
mat1 hat Folgendes geschrieben: |
Hallo zusammen,
ich habe ein für Matlab-Kenner recht einfaches Problem. Auch wenn schon häufig ähnliche Fragen gestellt wurden, habe ich für mein Problem nicht die passende Antwort gefunden.
Ich habe ein .csv-File mit Messdaten, das ich in Matlab importieren möchte. Wenn ich mir das File in Excel anschaue, besteht das File nur aus einer Spalte (A) und mehreren tausend Zeilen, wobei jede Zeile bestimmte Daten komagetrennt beinhaltet.
Die ersten beiden Zeilen bestehen aus den (kommagetrennten) Kenngrößen und zugehörigen Einheiten, die restlichen Zeilen aus den (kommagetrennten) Werten, die aber nicht nur numerisch sind, sondern auch Zeichen wie z.B. / beim Datum beinhalten.
Hier als Beispiel die beiden ersten Zeilen und eine Zeile mit Werten:
Datum,Zeit,Spannung,Strom,Leistung
,[s],[V],[A][W]
10/07/2008,34.4,10.2,3.0,30.6
Ich möchte diese Daten einfach nur ohne Firlefanz in eine Matrix zur weiteren Verwendung einlesen, mehr nicht. Ich habe schon alle möglichen Befehle wie csvread (geht nicht, weil nicht nur num. Werte beinhaltet sind) oder dlmread und wie sie alle heißen ausprobiert und bin aber gescheitert (wahrscheinlich, weil ich sie nicht richtig angewendet habe).
Es wäre einfach sensationell, wenn mir da jemand helfen könnte. Vielen Dank schonmal im Vorraus. |
Hi,
habe gerade eben was zu txt2mat (herunterladen vom Matlab File Exchange) geschrieben...
Versuch einfach mal
A = txt2mat('c:\datei.txt');
könnte funktionieren...
Grüße
|
|
|
derOli |

Forum-Meister
|
 |
Beiträge: 579
|
 |
|
 |
Anmeldedatum: 19.03.08
|
 |
|
 |
Wohnort: Leipzig
|
 |
|
 |
Version: 2010a
|
 |
|
|
 |
|
Verfasst am: 16.11.2008, 21:16
Titel:
|
 |
So müsste es auch funktionieren:
Die Daten auslesen kannst du zum Beispiel mit
usw.
Viele Grüße,
der Oli
|
|
|
mat1 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 16.11.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.11.2008, 08:34
Titel:
|
 |
Hallo,
erstmal vielen Dank für die schnelle Hilfe. Habe versucht, das Problem nach Oli's Vorschlag zu lösen. Das Problem ist allerdings, dass es sich um eine .csv-Datei handelt, was ich dann auch im strcat-Befehl angegeben habe. Das läuft auch ohne Fehlermeldung, allerdings habe ich als Ergebnis für A ein 1x7 cell Array, das mir durch den gennenten Aufruf auch nichts liefert. Aber die Lösung ist glaub ich etwas näher gerückt. Für weitere Hilfe wäre ich Euch wirklich dankbar.
Grüße
|
|
|
derOli |

Forum-Meister
|
 |
Beiträge: 579
|
 |
|
 |
Anmeldedatum: 19.03.08
|
 |
|
 |
Wohnort: Leipzig
|
 |
|
 |
Version: 2010a
|
 |
|
|
 |
|
Verfasst am: 17.11.2008, 12:19
Titel:
|
 |
Hallo mat1,
der Code war bloß für die Zahlen, die 2 Headerzeilen musst du auch noch rausnehmen am besten so:
Grüße,
der Oli
|
|
|
mat1 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 16.11.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.11.2008, 19:25
Titel:
|
 |
Hallo Oli,
erstmal vielen Dank für die schnellen Antworten. Das Problem ist folgendes:
Die csv-Datei beinhaltet zwar zwei Headerzeilen, die ich rausnehmen kann. Die Zeilen darunter bestehen aber nicht nur aus richtigen Werten (s. Beispiel), sondern auch aus Sonderzeichen wie z.B / bei den Werten fürs Datum.
Hier nochmal das Beispiel:
1. Zeile: Datum,Uhrzeit,Spannung,Strom,Leistung
2. Zeile: [],[s],[V],[A][W]
3. Zeile: 10/07/2008,16:50:20,10.2,3.0,30.6
4. Zeile: 10/07/2008,16:50:21,10.2,3.0,30.6
usw.
Das bekomme ich einfach nicht hin. Vielleicht gibt es ja eine Möglichkeit, nur bestimmte "Spalten" (sind ja eigentlich nur kommagetrennte Spalten) auszulesen wie bei xlsread?
|
|
|
derOli |

Forum-Meister
|
 |
Beiträge: 579
|
 |
|
 |
Anmeldedatum: 19.03.08
|
 |
|
 |
Wohnort: Leipzig
|
 |
|
 |
Version: 2010a
|
 |
|
|
 |
|
Verfasst am: 17.11.2008, 22:59
Titel:
|
 |
Ja, das %f steht für eine Zahl die eingelesen wird und die Zeichen dazwischen sind die Trennzeichen, die ignoriert werden sollen. In deinem Fall:
Viele Grüße,
der Oli
|
|
|
mat1 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 16.11.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.11.2008, 19:28
Titel:
|
 |
Hallo Oli,
vielen Dank nochmal für Deine Hilfe. Ich beginne zu verstehen! Das hört sich ja fast zu einfach an. Ich muss das mal ausprobieren...
Grüße
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|