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

Mittelwerte über Struct Array, welches 2D-Arrays enthält.

 

Duxon
Forum-Newbie

Forum-Newbie


Beiträge: 1
Anmeldedatum: 29.07.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.07.2014, 16:45     Titel: Mittelwerte über Struct Array, welches 2D-Arrays enthält.
  Antworten mit Zitat      
Ich habe ein 1x24 array of structs folgender Form:

Code:
>> data

data =

1x24 struct array with fields:
    x_R
    x_L
    y_R
    y_L
    y_ang_R
    y_ang_L
    expertise


Die enthaltenen Felder sind (n,n)-Arrays (jeweils identischer Größe), beispielsweise:
Code:
>> data(1).y_R

ans =

    0.1284    0.0862    0.0503    0.0424    0.0821
    0.4909    0.2679    0.1837    0.1094    0.1621
    1.5533    0.8405    0.5058    0.4050    0.4410
    2.8750    1.8504    0.9901    0.5598    0.6208
   12.5801    8.2597    7.2937    6.6564    8.1339


Nun interessiere ich mich für ein 25. struct array, das genau die gleiche Form besitzt und an jeder Stelle jeden Feldes den Mittelwert über alle struct arrays enthält.
Wie kann ich das unter Vermeidung verschachtelter Schleifen erreichen?

Meine Versuche und Recherche führt immer auf Formen, die den Mittelwert der unterliegenden Arrays bildet.
Code:
>> mean([data.x_R])

ans =

    0.4795

Das ist natürlich nicht das, was ich brauche. Leider kann man nicht nach konkreten Zellen in einem Array über alle structs filtern:
Code:
>> data.x_R(1)
Error: Field reference for multiple structure elements that is followed by more reference blocks is an error.


Ich vermute und hoffe, es gibt dafür eine gute Herangehensweise, die mir lediglich nicht auffällt. Leider ist mir nicht klar, an welcher Stelle ich weiter suchen und probieren muss.
Vielen Dank für jede Hilfe!
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: 02.08.2014, 15:18     Titel: Re: Mittelwerte über Struct Array, welches 2D-Arrays enthä
  Antworten mit Zitat      
Hallo Duxon,

Herzlich willkommen im Forum!

Ein Beispiel:
Code:
data(1).y_R = [ ...
    0.1284    0.0862    0.0503    0.0424    0.0821
    0.4909    0.2679    0.1837    0.1094    0.1621
    1.5533    0.8405    0.5058    0.4050    0.4410
    2.8750    1.8504    0.9901    0.5598    0.6208
   12.5801    8.2597    7.2937    6.6564    8.1339];
data(2).y_R = data(1).y_R + 1;   % Testdata!

V = mean(cat(3, data.y_R), 3);
 

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.