WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

CSV einlesen

 

myserious
Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 16.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.02.2009, 20:42     Titel: CSV einlesen
  Antworten mit Zitat      
Hallo zusammen,
leider konnte ich bisher noch keine Hilfe für mein zugegebenermaßen kleines Problem finden. Ich würde gerne eine CSV Datei mit Matlab einlesen und dann eine Grafik plotten.
In der Datei gibt es folgende Spalte:

1: durchgehende Nummerieung
2: Datum & Zeit (bsp: 21.01.09 11:00:00 AM)
3: Temperatur
die restlichen Spalten fast immer leer.

Ich habe einen AUszug der Datei angehängt. Im txt-Format

Ich würde nun eben gerne die 2 Spalte als X einlesen und Matlab sagen, dass es ein Datum mit Zeitangabe ist. Die dritte Spalte hätte ich dann eben gerne als Y Variable. Das Ziel ist simple: ICh will nur die Temperaturen zu den jeweiligen Zeiten plotten. Nach möglichkeit würde ich Matlab gerne sagen. Plott mir die Daten von zB: 02.02.09 12:00:00 PM bis 10.02.09 12:00:00 PM.
Wie gehe ich das denn am besten an. Mit CSVREAD hatte ich bisher einfach keinen Erfolg

bsp.txt
 Beschreibung:

Download
 Dateiname:  bsp.txt
 Dateigröße:  610 Bytes
 Heruntergeladen:  1066 mal
Private Nachricht senden Benutzer-Profile anzeigen


Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.02.2009, 21:05     Titel:
  Antworten mit Zitat      
Ich würde das so einlesen:
Code:
fid=fopen('bsp.txt','r');
data=textscan(fid,'%d %s %d %s %s %s %s%s','Headerlines',2,'delimiter',',');
fclose(fid)
x=data{1,2}
y=data{1,3}

Um weiterzumachen sieh' dir die Befehle
Code:
an. Dazu gibt es im Forum auch Beispiele.
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.022
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2023b
     Beitrag Verfasst am: 17.02.2009, 08:26     Titel:
  Antworten mit Zitat      
Moin,

eine weitere Alternative für csv-Files ist
Code:


Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.02.2009, 09:06     Titel:
  Antworten mit Zitat      
steve hat Folgendes geschrieben:
eine weitere Alternative für csv-Files ist
Code:
... die hier nicht funktioniert, weil Text und numerische Daten gemischt sind.
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.022
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2023b
     Beitrag Verfasst am: 17.02.2009, 10:15     Titel:
  Antworten mit Zitat      
Ahh ok.
Ich hab mal wieder nur den Titel gelesen und mir die Beispieldatei nicht weiter zu Gemüte geführt...

Gruß
Alex

PS: und wer lesen kann ist klar im Vorteil: "Mit CSVREAD hatte ich bisher einfach keinen Erfolg" Rolling Eyes
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
myserious
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 16.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.02.2009, 20:37     Titel: Erster Erfolg
  Antworten mit Zitat      
Ok Perfekt. Mit fid=fopen('...', 'r');
hat es gut geklappt. Ich konnte nun auch mein Datum mit datenum in Zahlen konvertieren und diese dann zusammen mit den Temperaturen plotten.
Jetzt versuche ich mit datetick('x', 'dd.mm.yy HH:MM:SS PM') meine WErte auf der X-Achse in das Datumsformat zu bringen. ABer leider sagt mir MATLAB immer 'unknown date format' ????
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 10:31     Titel:
  Antworten mit Zitat      
Versuch mal
Code:
datetick('x', 'dd.mm.yyyy HH:MM:SS PM')

(Jahreszahl vierstellig).
Klappt es?
 
myserious
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 16.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 11:36     Titel:
  Antworten mit Zitat      
leider die gleiche fehler meldung
ich versteh das nicht. mein datenum-befehl sieht folgendermaßen aus:

date10=datenum(x10,'dd.mm.yy HH:MM:SS PM')

x10 ist mein string der so aussieht:'02.02.09 11:30:00 AM'

date10 sieht dann in etwa so aus: 7.3358


und das passier dann in matlab:
>> datetick('x', 'dd.mm.yyyy HH:MM:SS PM')
??? Error using ==> datetick at 157
Unknown date format: dd.mm.yyyy HH:MM:SS PM
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 13:28     Titel:
  Antworten mit Zitat      
Ja, da hab ich mich wohl verguckt.
Kann es jetzt auch nicht ausprobieren.
Aber im Formatstring oben (textscan) muss das zweite %d eher ein %f sein. Das wird aber am Problem nichts ändern.
Am besten wäre es, du könntest ein komplettes, lauffähiges Beispiel konstruieren (mit ein paar Daten).
 
myserious
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 16.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 13:55     Titel:
  Antworten mit Zitat      
Ok! ALso hier ist mein Code

Code:

>> clear all
>> fid=fopen('1235490(10cm)+.csv','r');
>> data10=textscan(fid,'%*n %s %f %*s %*s %*s %*s', 'headerlines',2,'delimiter',',');
>> x10=data10{1,1};
>> y10=data10{1,2};
>> plot(datenum(datevec(x10,'dd.mm.yy HH:MM:SS PM')),y10,'r.')
>> datetick('x','dd.mm.yy HH:MM:SS PM')
??? Error using ==> datetick at 157
Unknown date format: dd.mm.yy HH:MM:SS PM


Die verwendete Datei ist im Anhang! ICh versteh diese Fehlermeldung einfach nicht! Zumal es bei einer Freundin mit diesem Code klappt....

1235490(10cm)+.txt
 Beschreibung:
Vorsicht txt-Format. Einfach umbenennen

Download
 Dateiname:  1235490(10cm)+.txt
 Dateigröße:  63.07 KB
 Heruntergeladen:  884 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 14:00     Titel:
  Antworten mit Zitat      
myserious hat Folgendes geschrieben:
Die verwendete Datei ist im Anhang! ICh versteh diese Fehlermeldung einfach nicht! Zumal es bei einer Freundin mit diesem Code klappt....


Anhang fehlt noch...
Aber das klingt dann sehr nach einem Versionsproblem.
Welche Version hast du, welche deine Freundin?
Check mal die Release Notes ob/wann sich da was verändert hat...
 
myserious
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 16.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 14:03     Titel:
  Antworten mit Zitat      
Anhang ist jetzt da.

Es handlet sich um die gleichen Version. Allerdings einmal auf Linux und bei mir auf WinXP
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 14:07     Titel:
  Antworten mit Zitat      
Sag noch sicherheitshalber welche...
 
myserious
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 16.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 15:18     Titel:
  Antworten mit Zitat      
ich habe die version 7.7.0(R2008b)
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 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.