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

unterschied textscan zwischen Octave / Matlab??

 

ben82
Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 17.06.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.10.2013, 18:34     Titel: unterschied textscan zwischen Octave / Matlab??
  Antworten mit Zitat      
so,
hier komme ich direkt mit einem weiteren Problem.
Ich habe ein textscan-Programm das in Matlab läuft:

Code:

% Löschen des Workspace
clear all
% testen der variable filename  
[filename,filepath] = uigetfile('*.csv', 'Choose File','MultiSelect', 'on');
for i=1:length(filename);
   fid=fopen(filename{i});
   Messdaten=textscan(fid,'%*f %*s %f %f %f %f %f %*f %*f %*f %*f %*f %*s','headerlines',24,'Delimiter',',');
   fclose(fid);
  Messdaten=cell2mat(Messdaten);
  Messdaten=mean(Messdaten);
   Mittelwerte_Datalogger(i,:)=Messdaten;
end  
 

Das Programm soll auch mit Octave laufen. tut es aber nicht. Beim auswerten der .csv Datei zeigt er mir folgendes an:

Messdaten =
{
[1,1] =

NaN
NaN
3.0000e+000
NaN
-7.3068e+002
-7.3068e+002
-7.3056e+002

[1,2] =

1.5360e+001
NaN
NaN
4.0000e+000
NaN
-7.3068e+002
-7.3068e+002 ....uisw...

das ist für mich nicht nachvollziehbar.
Matlab rechnet richtig, ab der 25.Zeile und der 3. Spalte bis zur 30.Zeile, 7. Spalte und es kommen keine "NaN". Wo liegt da der Unterschied? Muss der Befehl für Octave geändert werden?
Die ".csv" datei hänge ich als .txt an, da ".csv" nicht akzeptiert wird.

Messung_CP.txt
 Beschreibung:

Download
 Dateiname:  Messung_CP.txt
 Dateigröße:  1.58 KB
 Heruntergeladen:  789 mal
Messung.txt
 Beschreibung:

Download
 Dateiname:  Messung.txt
 Dateigröße:  1.58 KB
 Heruntergeladen:  785 mal
Private Nachricht senden Benutzer-Profile anzeigen


markuman
Forum-Guru

Forum-Guru


Beiträge: 320
Anmeldedatum: 14.12.12
Wohnort: ---
Version: 2013a/2013b, Octave 3.6.4, 3.7.7
     Beitrag Verfasst am: 14.10.2013, 19:21     Titel:
  Antworten mit Zitat      
Code:

...
Messdaten=textscan(fid,'%f %s %f %f %f %f %f %f %f %f %f %f %s','headerlines',24,'Delimiter',',');
...
Messdaten=cell2mat(Messdaten(1,[1 3:12]));
 


So funktioniert es bei mir in Octave. Allerdings verwirfst du dir so den Zeitstring in Spalte 2 (wenn du den nicht mehr brauchen solltest, ist es egal).

In Octave kannst du aber auch alles von fopen bis cell2mat mit einer Zeile erschlagen

Code:

Messdaten=csvread('Messung.txt' ,24,[2 13]);
 


Das ist allerdings nicht Matlab kompatibel. Die Angabe des range bei Matlab ist 100% kontra-intuitiv. Als wäre da einer auf Droge gewesen bei der Implementation.
_________________

DIY OR DIE Cool

entropie=char(floor(94*rand(1, round(100.*rand)) + 32))
https://github.com/markuman
Private Nachricht senden Benutzer-Profile anzeigen
 
ben82
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 17.06.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.10.2013, 19:45     Titel:
  Antworten mit Zitat      
auch hier wieder vielen dank!!!

es war das "cell2mat" was er nicht akzeptiert hat, so wie ich es geschrieben hab.
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.