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

Aus mehreren Arrays eine Matrix bilden

 

Klaus79

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.06.2009, 19:47     Titel: Aus mehreren Arrays eine Matrix bilden
  Antworten mit Zitat      
Tachchen auch!

Ich habe folgendes Problem: ich möchte aus ca. 50 Arrays (Max1, Max2, Max3 ...usw.) eine Matrix (Max_ges ) mit den Spalten Max1-50 machen. Weiss jemand wie so was geht? Hab hier im Forum schon gesucht, aber wirklich was helfendes habe ich leider nicht gefunden.

Freundliche Grüße!


steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.022
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2023b
     Beitrag Verfasst am: 02.06.2009, 21:01     Titel:
  Antworten mit Zitat      
Moin,

es gibt verschiedene Möglichkeiten. Wie liegen die Daten denn vor? Generierst du die irgendwie, liest du die ein, oder wie erstellst du die Vektoren?

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
 
Klaus79

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.06.2009, 14:25     Titel:
  Antworten mit Zitat      
Also eigentlich habe ich eine Excel Tabelle eingelesen. Daher haben die Arrays die Form Max1 = [1;2;3;4;5] nur mit je über 1000 Werten.
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.022
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2023b
     Beitrag Verfasst am: 03.06.2009, 14:38     Titel:
  Antworten mit Zitat      
Moin,

du hast also die Excel-Tabelle so eingelesen, dass die Spaltenüberschriften als Variablennamen verwendet werden?

Was hindert dich daran, den Datenbereich ohne die Überschriften als Ganzes einzulesen (über die Bereichsangabe in XLSREAD)? Dann solltest du alle Daten gleich in einer Matrix haben.

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
 
Alpha23
Forum-Anfänger

Forum-Anfänger


Beiträge: 35
Anmeldedatum: 11.09.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.06.2009, 14:44     Titel:
  Antworten mit Zitat      
Wenn man weiß, wie's geht, ist's recht einfach.
Zunächst sollten alle Daten in einem großen Cell Array gespeichert sein, was möglichst nur eine Zeile enthält und in dessen Zellen jeweils eine Matrix mit der gleichen Zeilenanzahl enthalten (wichtig).
Wenn du dir die Variable anschaust, dann sollte sowas kommen wie
Code:
A=
    [1000x3 double]   [1000x5 double]   [1000x4 double]

Das kannst du dann untereinanderhängen mit
Code:

oder eben wahlweise transponiert für nebeneinander.
Liefert das das was du brauchst?
Private Nachricht senden Benutzer-Profile anzeigen
 
Klaus79

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.06.2009, 15:22     Titel:
  Antworten mit Zitat      
Vielleicht ist das Problem noch nicht ganz klar.

Ich brauche eine Schleife die automatisch aus den einzelnen Arrays eine Matrix zusammenstellt. Ich habe viele Messdaten, die jedes mal eine andere Arrayanzahl liefern. Die Excel-Tabelle beinhaltet im orginal über 2000 spalten, weswegen ich vorher diese Arrays mir manuell aussuchen muss. Die Arrays Max1 ... ? ca. 40 - 60 möchte ich danach nacheinander zu einer Matrix der Form:

A=[Max1 Max2.....usw] zusammenführen. Die Bezeichnungen der Arrays / bzw. Spaltennamen habe ich nicht mit übernommen, die sind für mich auch unwichtig. Danke schon mal für die Hilfe Smile
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.022
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2023b
     Beitrag Verfasst am: 03.06.2009, 15:38     Titel:
  Antworten mit Zitat      
Moin,

dann zeig mal den Code mit dem du die Daten aus den Excelfiles raussuchst, meiner Meinung nach kann man die Sache gleich dort lösen...

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
 
Klaus79

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.06.2009, 16:44     Titel:
  Antworten mit Zitat      
Ah...ich hab Einwenig rumgesucht hier im Forum und mir was zusammengereimt was funktioniert. Wenn ich eine feste Reihenfolge der Spalten vorgebe, kann ich man das so machen (es funktioniert) :



Code:

Maxarray = [];
for i=2:6:Endwert
B= tabelle(:,i)
v = genvarname ('Max', who)
eval ([v ' =B'])
Maxarray =[Maxarray B];
end

Die einzelnen Max1....MaxN Arrays brauche ich für spätere Rechnungen auch.

Ich danke trotzdem allen für die Hilfe :-)

 
 
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.