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

Excel Spalten mit for schleife

 

Dexter
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 68
Anmeldedatum: 22.05.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.05.2013, 19:05     Titel: Excel Spalten mit for schleife
  Antworten mit Zitat      
Hi Leute,

ich habe mal wieder ein Problem...

Und zwar habe ich eine Excel-Datei, in der sich Messdaten befinden. In der ersten Zeile hat jede Spalte den jeweiligen Namen der Spalte (Text und Zahl).
Ich würde nun gerne die Excel-Tabelle in Matlab laden und zwar so, dass jede Spalte direkt in die jeweilige Variable in den Workspace geladen wird. Ich habe z.B. die Spalten Test1 und Test2 (Text in Zeile 1)mit jeweils 150 Zeilen.
Diese würde ich nun gerne mit einem script (das es bei mir etwa 200 Spalten sind) nacheinander in die jeweilige Variable umwandeln und in den Workspace laden.
Also so, das ich die Spaltennamen aus Excel anschließend als Varaiblennamen im Workspace habe. Natürlich mit den jeweiligen Zeilen aus Excel...

Mein Plan war das Ganze mit einer for-Schleife zu lösen. Allerdings habe ich keinen Plan, wie ich in Matlab mit for-Schleifen umgehe.
Mein Ansatz ist, die Excel-Datei wie folgt zu laden:
Code:
[nums, txt] = xlsread('test.xls','i:j')

i und j sollten da natürlich die einzelnen Spalten bzw. Zeilen darstellen, um den Bereich zum erstellen der Variable zu definieren.

Das funktioniert aber natürlich nicht...
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 26.05.2013, 20:47     Titel:
  Antworten mit Zitat      
Hallo,

es ist wesentlich einfacher, wenn du den gesamten relevanten Bereich nach MATLAB einliest und dann per Indizierung auf die Teilbereiche zugreifst.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Dexter
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 68
Anmeldedatum: 22.05.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.05.2013, 10:21     Titel:
  Antworten mit Zitat      
Wie genau ist das mit der Indizierung gemeint? Ich habe mir vorhin zwar was dazu durchgelesen, jedoch nicht wirklich genau begriffen.

Du meinst, ich solle die Daten komplett in Matlab importieren und dann je nachdem welche Daten ich hinterher verwenden möchte, einzeln ansprechen?

Das erscheint mir zum einfachen Plotten von Daten z.b. doch sehr kompliziert.
Mein gewünschter Weg ist aber wohl noch viel komplizierter?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 27.05.2013, 10:34     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Wie genau ist das mit der Indizierung gemeint? Ich habe mir vorhin zwar was dazu durchgelesen, jedoch nicht wirklich genau begriffen.

Das sind an sich absolute Grundlagen.
http://www.mathworks.com/help/matlab/math/matrix-indexing.html
Zugriff z.B. auf die n-te Spalte von Matrix A
Code:

Wenn, dann bitte konkrete Fragen dazu stellen.

Zitat:
Du meinst, ich solle die Daten komplett in Matlab importieren und dann je nachdem welche Daten ich hinterher verwenden möchte, einzeln ansprechen?

Genau.

Zitat:
Das erscheint mir zum einfachen Plotten von Daten z.b. doch sehr kompliziert.

Ist es aber nicht. Beispielsweise plotten 1. Spalte gegen 2. Spalte:
Code:
plot(A(:,1), A(:,2))


Zitat:
Mein gewünschter Weg ist aber wohl noch viel komplizierter?

Meines Erachtens ja.

Eine Alternative wäre der Import als Dataset Array
Code:

Das ist, wenn die Excel-Datei dafür geeignet ist, schöner, braucht aber am Anfang etwas Eingewöhnung.

Grüße,
Harald
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.