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

Matrix mit Header-Zeile

 

stratist9011
Forum-Anfänger

Forum-Anfänger


Beiträge: 43
Anmeldedatum: 12.04.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.06.2013, 20:52     Titel:
  Antworten mit Zitat      
Ich hätte zu dieser Frage noch eine weiterführende ....

Ich habe ebenfalls eine Matrix die mir Matlab ausspuckt welche ich gerne in einer txt. Datei speichern möchte, allerdings möchte ich zusätzlich eine Art Legende obendrüber mach also zb. so ....

e x y d1 d2
1 1 2 3 4
2 5 4 6 7
3 8 9 10 11

usw.

wobei meine Matrix N=[x y d1 d2 ] ist und e=[1, 2 , 3 ....] ein Vektor ist.
Wie mache ich so etwas ? Für Hilfe wäre ich dankbar ... Viele Grüße
Private Nachricht senden Benutzer-Profile anzeigen
Gesplittet: 27.06.2013, 22:57 Uhr von Jan S
Von Beitrag Wertetabelle in txt - Datei schreiben aus dem Forum Programmierung


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 27.06.2013, 23:00     Titel:
  Antworten mit Zitat      
Hallo stratist9011,

Bitte poste eine neue Frage immer in einem neuen Thread. Danke!

Zitat:
Matrix N=[x y d1 d2 ]

Dies kann keine Matrix sein. Ist dies ein Cell-String?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
stratist9011
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 43
Anmeldedatum: 12.04.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.06.2013, 23:57     Titel:
  Antworten mit Zitat      
Sorry ich war vorhin zu faul die schnell die Matrix da rein zu kopieren und habe einfach x y d1 d2 geschrieben die Matrix ist natürlich

N=[1 2 3 4 , 2 5 4 6 7, 8 9 10 11] wobei eben x die 1. Spalte y die 2. Spalte d1 3. Spalte d2 4.Spalte ist, denke das das jetzt ersichtlich ist.

Was ich eben genau erreichen möchte ist, das in der Ausgabe datei über der jeweiligen Spalte die entsprechende Variable steht ....
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 28.06.2013, 00:27     Titel:
  Antworten mit Zitat      
Hallo stratist9011,

Wie werden die Namen der Variablen in Matlab gespeichert?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
stratist9011
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 43
Anmeldedatum: 12.04.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.06.2013, 07:07     Titel:
  Antworten mit Zitat      
Ich ich habe jede Spalte der Matrix N vorher als Vektor definiert. Und diese Matrix dann aus diesen zusammengsetzt. Es gibt also einen Vektor x=[1 , 5 , 3, ...] und einen Vektor y=[4 , 5 , 6 , 7 ] usw.
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 28.06.2013, 08:44     Titel:
  Antworten mit Zitat      
Hallo stratist9011,

Und dann soll automatisch der Name der Variablen im Text-File erscheinen? Das wäre eine ungeschickte Methode. Denn der Sinn von "Variablen" ist ja, dass sie variablen Inhalt tragen können und man abstrahiert über den Namen darauf zugreifen kann.

Eine Möglichkeit wäre die Verwendung eines Structs:
Code:
Data.x = [1,3,2,4,5];
Data.y = [3,9,8,6,10];

Name = fieldnames(Data);
ValueC = struct2cell(Data);
ValueM = cat(1, Data{:}).';
n = length(Name);

FID = fopen(FileName, 'w');
if FID == -1, error('My:Error:ID', 'Cannot open file %s', FileName); end
FmtS = [repmat('%s ', 1, n-1), '%s'];  % No trailing space
FmtD = [repmat('%.8g ', 1, n-1), '%.8g'];  % Anpassen nach  Bedarf
fprintf(FID, FmtS, Name{:});
fprintf(FID, FmtD, Value);
fclose(FID);

Dies ist nicht getestet.

Gruß, Jan
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 - 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.